一个简单的问题,(希望有一个简单的答案)。在QTreeView中使用自定义角色而不是DisplayRole
默认情况下,QTreeView会在获取显示行时将Qt.DisplayRole传递给模型的数据函数。 但是说我想通过'MyAwesomeTreeDisplayRole'而不是Qt.DisplayRole,我需要做什么?
我似乎无法找到视图决定使用displayrole或如何覆盖它的任何地方。
你问就在我为什么想做这样可怕的事情..
基本上,我化QAbstractItemModel旨在使用既为一个TreeView(1根)和实现代码如下(多列,基于母公司) 。
对两种类型的视图使用相同的DisplayRole实际上并不奏效,因为那样我就不得不为两者返回相同的数据。这导致我只想看到树视图中的第一列,当我想返回几列的连接时。
我认为最简单的方法就是使用自定义角色(TreeDisplayRole和TableDisplayRole)。
在此先感谢。
谢谢,我给一个尝试。我知道TreeView可以显示多列,但它似乎只设置了一个全局列计数,所以我必须将其设置为最宽表的大小并制作一些填充样板,以将空列添加到节点类型较少的节点类型列。另外,11列对于树视图来说感觉有些尴尬。 :P – 2012-01-15 01:55:03