【问题标题】:PyQT: Creating custom Widgets for QListViewPyQT:为 QListView 创建自定义小部件
【发布时间】:2016-04-12 20:48:52
【问题描述】:

我想向 QListView 添加一个自定义小部件,我已经阅读了关于 Delegates 的 SO 线程。 QListView/QListWidget with custom items and custom item widgets

但这在 pyqt 中是如何应用的呢?我找不到任何例子。一些文章展示了如何覆盖画图功能,它只会改变外观,但不会将小部件添加为项目。

【问题讨论】:

  • 谷歌“pyqt委托示例”,发现:saltycrane.com/blog/2008/01/pyqt4-qitemdelegate-example-with
  • 此示例用于绘制小部件,而不是用于组合小部件。
  • 我不确定你的意思。你觉得有什么不同?
  • 它没有为元素设置小部件,它只是改变了它的显示方式,在您提供的示例中,它只是将背景颜色更改为红色。但我想为每个项目添加一个自定义小部件,它可以包含例如一个 qpusbutton 或另一个小部件。

标签: python pyqt


【解决方案1】:

setCellWidget() 如果你可以切换到 QListWidget 或 QTableWidget add custom widget to QTableWidget cell

...或者您可以像我在这里一样通过委托在单元格矩形中生成新的小部件: delegate that edits bound python object properties

我们使用这样的代码来处理域对象的文本、数字、日期、布尔值、图像、文档文件、坐标、列表属性等。

【讨论】:

  • 感谢 Source Max,是否缺少文件?你有:ObjectDelegate,但它没有在任何地方使用,我想看看你如何在列表/表格视图中使用它。
  • 明天我会附上小样本。简而言之,我们将它与自定义 Q(Table|Tree|List)Widget 一起使用,但您当然可以使用 QTableView 来完成
  • 非常感谢兄弟,我会研究这些例子,这很有帮助!顺便说一句,我也可以在您的驱动程序共享中看到您的其他文件,只要确保没有人看到您的私人资料!
  • 谢谢!人们总是必须记住这个网络东西的安全性,我忘记了:)
猜你喜欢
  • 1970-01-01
  • 2015-11-19
  • 2010-12-09
  • 1970-01-01
  • 2014-02-10
  • 2013-01-08
  • 2023-03-20
  • 2019-11-20
  • 1970-01-01
相关资源
最近更新 更多