Frage

Ich habe eine Liste von QTreeWidgetItems (mit Kindern) in einem QTreeWidget. Ich habe kein Modell für meine Daten verwenden.

Von einem anderen Fenster in meiner Anwendung die Benutzer durch den gleichen Satz von Daten navigieren können (gesehen unterschiedlich) und die QTreeWidget im ersten Fenster dann hebt hervor, dass bestimmte Zeile durch die Hintergrundfarbe zu setzen.

Wenn jedoch die QTreeWidget auf einer Spalte sortiert wird, in dem einige der Elemente den gleichen Wert haben, ist es nicht definiert, welches Element zuerst ist. Wenn ich gesetzt ist, dann die Navigation durch das andere Fenster und die Hintergrundfarbe des Elements verwendet wird, automatisch die gleichen Elemente Swaps in der Ansicht. Das sieht sehr seltsam.

Ich vermute, dass dies den Sortieralgorithmus von QTreeWidget fällig ist, aber weiß jemand eine mögliche Abhilfe für diesen?

War es hilfreich?

Lösung

Sind Sie mit QItemSelectionModel , dies zu tun, oder haben Sie es selbst schreiben?

  • Wenn Sie es selbst geschrieben würde ich vorschlagen QItemSelectionModel verwenden.
  • Wenn Sie nicht haben, es klingt wie Sie eine benutzerdefinierte wollen Algorithmus Sortierung, die eine abgeleitete QTreeWidget erfordern würde, zu schaffen, wenn Sie das tun, dann kann man auch nur mit QTreeView und ein benutzerdefinierter Model / View Rahmen und ein QTreeView.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top