2010-02-03 5 views
2

Comment implémenter un tri de préservation dans Qt QTreeWidget? C'est à dire. Je voudrais que l'ordre précédent de l'arbre soit préservé autant que possible. Cela permet à l'utilisateur de faire quelque chose comme cliquer sur l'en-tête de colonne "Nom" puis sur l'en-tête de la colonne "Date", et l'arborescence résultante affiche les éléments dans QTreeWidget par Date, puis par Nom.Qt QTreeWidget preserve sort

Répondre

4

Malheureusement, vous ne pouvez pas. QTreeWidget utilise un inaccessible (et interne) QTreeModel pour ses opérations, y compris le tri.

Normalement, pour ce faire, vous devez implémenter un stable sort dans votre sous-classe QAbstractItemModel. Un tri stable laissera des éléments dont la position n'a pas besoin de changer au même endroit.