我在 can bus 上收到了这些消息,需要在合适的 Qt Widget 上显示(请参阅附图)。看来我可以使用QTreeView
它。
我需要显示一个包含许多消息的树,如附图所示。每行将包含有关接收到的消息的信息。
它应该由列组成:
- 长度
- 收货时间
- 消息 ID
- 消息名称
- 留言内容
当我扩展消息时,它应该是不同的信号。
如何制作带有列的 QTreeView ?
我在 can bus 上收到了这些消息,需要在合适的 Qt Widget 上显示(请参阅附图)。看来我可以使用QTreeView
它。
我需要显示一个包含许多消息的树,如附图所示。每行将包含有关接收到的消息的信息。
它应该由列组成:
当我扩展消息时,它应该是不同的信号。
如何制作带有列的 QTreeView ?
有一个问题不允许您制作屏幕截图显示的内容,即第一层和第二层没有相同的列布局。QTableView
AFAIK ,用当前的实现是不可能的,QTableWidget
你必须实现你自己的类。
如果您可以适应两个级别具有相同的列布局,请继续阅读我写的内容,然后再看您的屏幕截图:
你可以,QTreeView 只是一个 QTableView,第一列有一些艺术。
将您想要的所有列添加到模型中。一个简单的 [QStandardItemModel][1] 就足以做类似屏幕显示的事情
只要记住两件事:
- 只会显示第一列子项。
第一列不能隐藏。
[1]:http: //qt-project.org/doc/qt-4.8/qstandarditemmodel.html