فرز مستقر qtreewidgetItems في qtreewidget؟
-
21-09-2019 - |
سؤال
لدي قائمة من qtreewidgetItems (مع الأطفال) في qtreewidget. أنا لا أستخدم نموذجًا لبياني.
من نافذة أخرى في طلبي ، يمكن للمستخدم التنقل من خلال نفس مجموعة البيانات (تم عرضها بشكل مختلف) و QTREewIdget في النافذة الأولى ثم يسلط الضوء على هذا الصف المحدد عن طريق ضبط لون الخلفية.
ومع ذلك ، عندما يتم فرز QTREewIdget على عمود حيث يكون لبعض العناصر نفس القيمة ، فإنه غير محدد أي العنصر أولاً. عندما أقوم بعد ذلك بالتنقل باستخدام النافذة الأخرى ويتم تعيين لون الخلفية للعنصر ، فإن المقايضات المتساوية في العرض تلقائيًا. هذا يبدو غريبا جدا.
أظن أن هذا يرجع إلى خوارزمية الفرز لـ qtreewidget ، ولكن هل يعرف أي شخص حلًا محتملًا لهذا؟
المحلول
هل تستخدم QItemSelectionModel
للقيام بذلك ، أم أنك كتبته بنفسك؟
- إذا كتبت ذلك بنفسك أود أن أقترح استخدامه
QItemSelectionModel
. - إذا لم تقم بذلك ، يبدو أنك تريد خوارزمية فرز مخصصة تتطلب إنشاء مشتقة
QTreeWidget
, ، إذا كنت تفعل ذلك ، فقد تستخدم أيضًاQTreeView
وعرفQAbstractItemModel
.
وأيضًا ، إذا كان لديك عرضان من نفس البيانات ، فسأوصى بشدة باستخدام نموذج/عرض إطار و QTreeView
.