如何为QListView实现Clickable Widget?

时间:2013-10-01 12:08:51

标签: qt qwidget

我想为QListView实现自己的Widgets。像这样: enter image description here 如果我点击这个小部件,我想做点什么。

最后,我只对ListView的QML版本有经验。 有人可以解释如何将此小部件插入到QListView中吗?

问候

更新

在我的项目中,我想要一个像这样的GUI: enter image description here 在我的第一个ListView中,我想要显示具有ListView的项目。每个项目的文本都可以更新。

1 个答案:

答案 0 :(得分:2)

有两种方式:

  1. 为每个索引设置自定义窗口小部件:QAbstractItemView::setIndexWidget。注意:与小部件交互可能存在问题。这种方式通常仅用于显示静态内容。
  2. 创建自定义QStyledItemDelegate并覆盖editorEvent方法。有关详细信息,请参阅model-view programming
  3. 更新: 我建议你下一个设计:

    1. 使用图片列表+“动态内容”+标签
    2. 创建窗口小部件
    3. 使用垂直布局创建ScrollArea并添加小部件(1。)
    4. (2。)比简单列表视图更令人满意,因为listview没有为这种情况设计。 Listview旨在显示一些数据,但不是其他复杂小部件的容器。

      优点:你将拥有完全可互动的小部件。

      缺点:你需要编写一些代码;)