限制QTreeWidget中的项目数

时间:2015-11-19 13:44:14

标签: python qt pyqt qtreewidget qtreewidgetitem

有没有办法限制我的 QTreeWidget 可以拥有的项目数,类似于FIFO缓冲区?

1 个答案:

答案 0 :(得分:2)

我仍然不完全确定你想要实现什么。但这里有一些一般的建议。

如果要实现窗口小部件与基础数据结构交互的自定义​​约束和行为,则应考虑遵循Qt的模型视图体系结构。

显示QWidget的任何多项都可以用QView + QModel替换。例如,您可以将QTreeWidget替换为QTreeView。然后,您实现从QAbstractItemModel派生的自己的模型,并将其附加到视图中。视图将自动适应模型中所做的更改。这样,您可以在模型类中拥有一个容器,每当添加一个项目时,检查是否达到最大数量,然后删除其他任何元素。

These tutorials会让您更深入地了解我的建议。我知道它们是C ++,但所有这些都应该很容易翻译成pyqt。