我在QTreeWidget中有一个QTreeWidgetItems列表(带有子项)。我没有为数据使用模型。
用户可以从应用程序的另一个窗口浏览同一组数据(以不同的方式查看),第一个窗口中的QTreeWidget然后通过设置背景色突出显示该特定行。
但是,当QTreeWidget在某些项目具有相同值的列上排序时,则不确定哪个是第一个项目。然后,当我使用其他窗口导航并设置了项目的背景色时,相等的项目会自动交换到 View 中。这看起来很奇怪。
我怀疑这是由于QTreeWidget的排序算法引起的,但是没有人知道这可能的解决方法吗?
最佳答案
您是使用 QItemSelectionModel
还是自己编写?
QItemSelectionModel
。 QTreeWidget
,如果您这样做,则最好只使用 QTreeView
和一个自定义 QAbstractItemModel
。 另外,如果您对同一数据有两个 View ,则强烈建议使用Model/View框架和
QTreeView
。关于c++ - 在QTreeWidget中稳定排序QTreeWidgetItems?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2282450/