作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在使用 python 2.7 和 PyQT5,这是我的按钮:
self.buttonBox = QtWidgets.QDialogButtonBox(Dialog)
self.buttonBox.setGeometry(QtCore.QRect(50, 240, 341, 32))
self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok)
self.buttonBox.setObjectName("buttonBox")
self.buttonBox.clicked.connect(Dialog.accept)
self.buttonBox.rejected.connect(Dialog.reject)
等....
if __name__ == "__main__":
app = QApplication(sys.argv)
window = QDialog()
ui = Ui_Dialog()
ui.setupUi(window)
window.show()
sys.exit(app.exec_())
单击“确定”后如何执行功能?
最佳答案
不要连接到 buttonBox.clicked
,因为它将为每个 按钮调用。
您的按钮框连接应如下所示:
self.buttonBox.accepted.connect(Dialog.accept)
self.buttonBox.rejected.connect(Dialog.reject)
要在接受对话框时运行函数/插槽(即仅在单击“确定”按钮时),请执行以下操作:
self.accepted.connect(some_function)
如果要传递参数,请使用 lambda
:
self.accepted.connect(lambda: some_function(param))
关于python - 单击确定后执行功能(QDialogButtonBox),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33547821/
我是一名优秀的程序员,十分优秀!