توقف عن التحديث من QModelIndex
-
25-09-2019 - |
سؤال
لديّ QtreeView مع البيانات التي تتغير بمرور الوقت ، مع وجود إشارة مغلقة datachanged في QabstractItemModel كل ثانية. يمكن أيضًا تحرير العناصر الموجودة في QtreeView ، ولكن عندما يتم فتح محرر لعنصر معين ، يتم تحديث سلسلة المحرر أثناء التحرير ، وهو أمر مزعج للغاية. أي طريقة لمنع تحديث المحرر بالقيم الجديدة؟
المحلول
هل تستخدم النموذج الخاص بك مع QtreeView؟ في هذه الحالة ، يمكنك الكتابة عليها ولا تُرجع أي بيانات لـ QT :: Editrole. إذا لم يكن ذلك مناسبًا لك (تريد أن يكون لديك البيانات الحالية في الحقل عند البدء في تحريرها) ، فيمكنك إنشاء QitemDelegate/QStyledItemDelegate وتنفيذ بعض المنطق المخصص هناك: اجعله حتى لا يتم تحديث عنصر واجهة المستخدم مع قيمة جديدة ، عندما يكون لها التركيز ، على سبيل المثال.
على الرغم من أنني قد أفتقد شيئًا ، وهناك طريقة أسهل للقيام بذلك.