如何使用自定义(不可编辑)委托创建模型/视图QTableView?

mos*_*osg 5 qt delegates qt4 qtableview

这里就是我试图让(这是一个QTableView小部件+ MVC基于QAbstractTableModel与多代表):

在此输入图像描述

笔记:

  • 代表不是编辑,他们只是观众!我没有用这个表视图编辑模型.

  • 代表必须是可实现的.这意味着蓝色行的所有总高度可以是25px或250px.

  • MV是简单的数据:

    1ROW:CompanyName1 Name1,Name2,Name3 OTHER DATA

    2ROW:CompanyName2 SingleName1 OTHER DATA

    3ROW:CompanyName3 Name1,Name2 OTHER DATA等等......

题:

  • 是否可以创建自定义委托(QItemDelegate,或QStyleItemDelegate),例如,如上图所示,到第二列?如果可能的话,也许你可以给我一些例子或资源链接,我可以在哪里查看它们.

PS.是的,我已经与代表一起查看了所有Qt演示示例,但我只是不明白,如何做我想要的.

PSS.QTableView- > setIndexWidget()我觉得这不是个好主意.但是QTableView- > setItemDelegateForColumn( myCustomDelegate )方法更好!

P3S.我不是在找QTableWidget班级的解决方案......

谢谢您的回复!:-)


更新#1:

  • 我觉得:

    • 委托仅用于编辑(例如,如果我们使用模型/视图对象)并管理类似的项目(全部/只是列/只是行).

    • 自定义小部件更好,但我没有在免费的Qt项目中遇到它们.获得这种小部件的漂亮和正确的代码并不容易......


加成:

  • 这是相似性问题的链接.

Rob*_*ieE 0

委托不仅可用于创建编辑中使用的小部件。它们还用于创建每个可见索引(在本例中为表格单元格)的整体外观。

您可以通过重新实现委托的Paint()方法来自定义创建外观。