Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使QPushButton不被Enter键盘键触发_Python_Pyqt_Qpushbutton - Fatal编程技术网

Python 如何使QPushButton不被Enter键盘键触发

Python 如何使QPushButton不被Enter键盘键触发,python,pyqt,qpushbutton,Python,Pyqt,Qpushbutton,下面的代码创建了一个带有5个按钮的对话框窗口。每个按钮都连接到onClick功能。如果我按键盘上的“回车”键,其中一个按钮会被触发,并执行onClick功能 如何更改按钮属性,使按钮仅在单击时调用onClick功能,而不响应Enter键盘键 将QPushButtons的default和autoDefault属性设置为False。例如 btn = QtGui.QPushButton('Button %03d'%i, default=False, autoDefault=False) 您观察到的

下面的代码创建了一个带有5个按钮的对话框窗口。每个按钮都连接到
onClick
功能。如果我按键盘上的“回车”键,其中一个按钮会被触发,并执行
onClick
功能

如何更改按钮属性,使按钮仅在单击时调用
onClick
功能,而不响应
Enter
键盘键


QPushButtons
default
autoDefault
属性设置为False。例如

btn = QtGui.QPushButton('Button %03d'%i, default=False, autoDefault=False)

您观察到的是QDialog对enter键的特殊处理以触发默认设置(这是使用QDialog时常见的问题)。

感谢您指出,正是QDialog和QPushButton之间的交互使“enter”键触发了与QPushButton相关的操作。
btn = QtGui.QPushButton('Button %03d'%i, default=False, autoDefault=False)