小编Wee*_*etu的帖子

自定义绘制委托中的可单击元素或子窗口小部件

我有一个QListView,我使用自定义绘图显示项目.在每个项目(即每个列表行)中,我希望能够显示一些用户可以单击的"超链接",然后调用某些功能.

我已经尝试检查官方文档(例如模型/视图编程)以及相当多的谷歌搜索,但还没有弄清楚如何实现这一目标.

我有两个想法,每个都有自己的问题:

  • 我可以使用子小部件绘制它们,就像平面QPushButton一样.然后我如何定位和显示这些小部件?
  • 我也可以将它们绘制为文本字符串.然后如何使它们可点击?或者我可以捕获父QListView上的点击事件,并以某种方式确定那些坐标?然后我可以将坐标与这些可点击元素进行匹配并相应地采取行动

我最初的方法是使用QListWidget和.setItemWidget(),其中我有一个带有布局和子窗口小部件的正确小部件.不幸的是,当我的列表增加到数百或数千个项目时,这太慢了.这就是我用委托更改为QListView的原因.

qt qt4 qlistview qitemdelegate pyside

8
推荐指数
1
解决办法
1414
查看次数

标签 统计

pyside ×1

qitemdelegate ×1

qlistview ×1

qt ×1

qt4 ×1