问题标签 [qlistwidget]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - QListWidget::addItem 产生可怕的闪烁
当我一次添加一项时会发生这种情况(添加一项然后返回到事件循环)。为了说明,我的代码大致如下所示:
python - 无法使用自定义小部件更改可检查 QListViewItem 的状态
我有一个 QListWidget,我想在其中添加一堆带有自定义小部件的项目:
顾名思义,MyLabelAndPushButton 只是一个在布局中包含 QLabel 和 QPushButton 的小部件。问题是我不能使用出现在小部件旁边的列表小部件中的复选框。它看起来完全正常,但是当我单击它时没有任何反应。如果我使用 setItemWidget 删除该行,它可以正常工作。我究竟做错了什么?
编辑:
在bugreports.qt.io/browse/QTBUG-16386报告了错误,但得到了回复“API 不是为您打算做的事情而设计”和“如果您想显示自定义小部件,请使用 QListView 和子类 QItemDelegate。” 所以显然这不是一个错误,只是 API 无法处理的东西。
qt - QListWidget拖放项目从Symbian列表中消失
我在使用可以通过拖放重新排序的自定义项目实现 QListWidget 时遇到问题。问题是当我在一个项目上快速双击(非常短的拖放)时,该项目有时会从 QListWidget 中消失。
这是我的小部件的构造函数:
还有 drop 事件:
自定义项目是通过实现 QAbstractItemDelegate 中的 paint() 和 sizeHint() 函数来制作的。
当项目消失的问题发生时,甚至不会调用 dropEvent。
我真的不知道发生了什么以及我是否做错了什么。任何帮助表示赞赏。
谢谢!
编辑:我在 Symbian S60 第 5 版手机上运行该应用程序。
Edit2:如果我将此行添加到构造函数:
列表中的项目仍然消失,但空行留在原处。
Edit3:我添加了这段代码来看看发生了什么:
当调用 drop 事件时,我还打印了“drop event”。这给了我以下输出:
如您所见,在事件类型 68 之后,listCount 从 2 变为 1(一项消失)。我仍然没有找到问题所在......
Edit4:即使我不使用自定义项目,我也有相同的行为。仍然无法弄清楚出了什么问题。
Edit5:即使 [1] 中的示例在移动设备上进行测试时也具有相同的行为。Qt版本会不会有问题?我正在为 Symbian 设备版本 4.6.3 使用 Qt ...
[1]http://www.java2s.com/Code/Cpp/Qt/QListWidgetdraganddrop.htm
qt - Qt在两个QListWidget之间拖放
我有两个 QListWidget(list1 和 list2)
list1
应该能够从list2
list1
应该能够通过内部拖放进行重组list2
应该能够从list1
我必须list2
打开InternalMove
否则当我将它拖到list1
.
如果我投入list1
,InternalMove
我就不能再放弃了。
我是否必须编写自己的拖放功能才能做到这一点?
python - PyQt4:如何迭代 QListWidget 中的所有项目
目前,我在继承 QtGui.QListWidget 的类中使用以下 while 循环来迭代所有项目:
我希望我可以使用:
但是 items() 方法需要一个 QMimeData 对象,我不知道如何构造它以返回所有项目。有没有比我上面的 while 循环更干净的方法?
python - 将项目从一个 QListWidget 移动到另一个
我必须 QListWidgets、一个源列表、一个命运列表和一个按钮。每当单击按钮时,我都希望从源列表中删除所选项目并将其插入到命运列表中。我试过了,source_list.removeWidgetItem(aSelectedItem)
但这甚至没有做任何事情。:(我做错了什么?之后我需要以某种方式更新列表吗?
qt - 将填充了文件名的 QListWidget 中的选定项目复制到剪贴板,但作为文件(不是文本)
我有一个用文件名填充的 QListWidget,当用户按下 Ctrl+CI 时想要将文件名放置到剪贴板,因此如果用户在文件管理器中按下 Ctrl+V,文件将被复制。
python - 在 QListWidget 上自定义 PyQt 多点触控平移手势
我正在编写一个简单的记事本应用程序,以自学基本的 Python/PyQt。具体来说,我想知道如何更改 QListWidget 上的多点触控平移手势灵敏度。
就像现在一样,当我用 2 根手指上下拖动时,对于我用手指移动的每个像素,列表似乎向上/向下移动了一步。这不是我自己实现的,它似乎对列表小部件开箱即用
我希望移动模仿我手指的速度,即每 x*height_of_item_in_pixels 向上/向下移动一个小部件项目。如果不对手势系统进行重大入侵,这是否可行?我该怎么办?
我正在使用 PyQt 4.8.3 和 Python 2.6
c++ - 在 QListWidget 中使用图像,这可能吗?
我正在使用 QT 创建聊天信使客户端。为了显示在线用户列表,我使用了一个QListWidget
,像这样创建的:
通过不断刷新列表来显示用户,如下所示:(注意:有不同的频道,有不同的用户列表,所以据我所知,刷新是最有效的做法。)
这一直很完美。我注释掉的那一行是我遇到的问题:我当前的目标是能够用图像显示用户的在线状态,该图像表示他们是否忙、不在、有空等。setIcon()
但使用绝对没有任何作用,显然; 这些项目仍然像以前一样显示,没有图标。
我知道这可能不是这个函数需要使用的方式,但是我在网上几乎没有找到关于它的文档,而且绝对没有有用的实现示例。我的问题是,有人可以帮我解决这个问题吗?
c++ - 在 qt creator 中填充列表框
我正在研究 Qt Creator,我对它完全陌生。我想要一个列表框,在我运行程序时加载数据,我从列表框中选择一个值并按下按钮并对所选值执行一些操作。
Qt creator 中的列表框有什么选项吗?我见过拖放列表框和列表视图,但不知道使用哪个以及如何使用它。
另外,在哪里编写代码来自动加载列表?
我的项目有很多文件,如:
- 主窗口.h
- 主窗口.cpp
- 主窗口.ui
- 主窗口.c
- 主程序
有人可以帮我解决这个列表框的问题,还可以帮我解决语法。
谢谢