- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个相当简单的 PyQt 问题。 (Python 3.4、PyQt 4.11.3、Qt 4.8.5)我使用 Qt Designer (Ui_Dialog) 构建了一个非常简单的对话框。该对象有一个 QPushButton、一个 QLineEdit 和一个 QListWidget。我编写了另一个继承自 Ui_Dialog 的对象,并设置了来自 QLineEdit 的 returnPressed 信号,该信号应向 QListWidget 添加一些文本。不幸的是,这不起作用。
这是我的代码:
import sys
from PyQt4 import QtGui
from dialog import Ui_Dialog
class ImDialog(QtGui.QDialog, Ui_Dialog):
def __init__(self):
super(ImDialog, self).__init__()
self.setupUi(self)
self.lineEdit.returnPressed.connect(self.additem)
self.pushButton.clicked.connect(self.listWidget.clear)
def additem(self):
text = self.lineEdit.text()
print(text)
self.listWidget.insertItem(0, text)
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
ui = ImDialog()
ui.show()
sys.exit(app.exec_())
行编辑器中的文本可以正常打印到终端,但不会添加到 listWidget 中。
有趣的是,如果我注释掉 sys.exit 行并在 IPython 终端中运行它,我可以毫无问题地向 listWidget 添加任意数量的文本。
[In 1]: %run that_program.py
[In 2]: ui.listWidget.insertItem(0, "Test") # This works fine
如果有人有任何建议让它工作(在 IPython 之外),我将不胜感激。谢谢
最佳答案
对话框中只有一个按钮,因此它将变成 auto-default 。这意味着每当您在对话框中按 Enter 键时,按钮都会收到按下事件,即使它当前没有键盘焦点。
因此,该项目确实被添加到列表小部件中 - 只是它随后立即被自动默认按钮清除。
要解决此问题,请重置自动默认值,如下所示:
self.pushButton.setAutoDefault(False)
(注意:您也可以在 Qt Designer 中更改此属性)。
关于python - PyQt:ListWidget.insertItem 未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27401994/
我有一个方法可以删除 QListWidget 上的文件列表: void MainWindow::ProvideContextMenu(const QPoint &pos) { QPoint i
在学习 PyQt5 时,我在 ListWidget 小部件(以及所有其他小部件)中发现了一个小问题(可能是一个错误) ListWidget 有一个重载的 addItem 方法:(代码在 C++ 中,但
如何从 QListWidget 中删除选定的项目? 我试过写下面的代码,但是没有用。 QList items = ui->listWidget->selectedItems(); foreach(QL
ListWidget列表框组件,该组件与TreeWidget有些相似,区别在于TreeWidget可以实现嵌套以及多字段结构,而ListWidget组件则只能实现单字段结构,ListWidget组件
我有一个相当简单的 PyQt 问题。 (Python 3.4、PyQt 4.11.3、Qt 4.8.5)我使用 Qt Designer (Ui_Dialog) 构建了一个非常简单的对话框。该对象有一个
我试图只点击列表小部件中项目列表中的一个项目。 我在我的 UI 中右键单击并转到插槽: void main::listWidget_itemClicked(QListWidgetItem* item)
在使用 QListWidget 和其他“列表”小部件之后,我终于找到了一个似乎是存储和检索列表的 Item 类(QListWidgetItem)的简单解决方案。我向自己介绍的问题是我认为 QListW
我正在尝试使用 Python 向 PyQt4 中的列表小部件中的项目添加右键单击功能。我喜欢一个弹出式上下文菜单来显示它有按钮,点击时应该执行一些功能。 如何在右键单击每个项目时弹出上下文菜单? 最佳
在我的项目中,我有一个listWidget。当用户单击列表中的项目时,它会加载: void BlockSelect::on_blockList_clicked(const QModelIndex &i
ListWidget 中有 5 个项目。按下按钮打印当前项目及其索引。似乎应该有足够的信息来从 ListWidget 中删除/删除该项目。 问题:如何从 ListWidget 中删除当前选定的列表项?
我有一个问题,我不知道如何从选定的目录中过滤图像。我通常使用 directory.setNameFilters({"*.png", "*.jpg"}); 但在这种情况下我不能使用它,因为我需要在 列表
如何在每次迭代时更新 listwidget ?它在 500 次迭代后更新 listwidget。pyqt4、python3.7 def input_val(self): for i in ra
我是一名优秀的程序员,十分优秀!