我正在尝试创建一个登录系统类型对话框,以便使用PyQt5进行练习(我对该模块非常陌生),并且我正在尝试让用户能够单击(确定、取消、应用)作为用户名/密码输入框下面的按钮,但我不确定如何实际使应用按钮工作。我有buttons.accepted.connect(*method*)
和buttons.rejected.connect(*method*)
,但我不知道如何指定按下accept按钮。我尝试过使用buttons.clicked(dlgButtons[0]
(按钮存储的地方),但它只是给了我一个错误
下面的代码是我对按钮的声明,如果有帮助的话。谢谢
buttons = qt.QDialogButtonBox()
dlgButtons = (qt.QDialogButtonBox.Apply, qt.QDialogButtonBox.Ok, qt.QDialogButtonBox.Cancel)
buttons.setStandardButtons(
dlgButtons[0] | dlgButtons[1] | dlgButtons[2]
)
一种可能的解决方案可能如下所示:
在} 枚举,它是按钮的标识符列表,它们不是“实际”按钮
dlgButtons
中存储的只是一个枚举列表,特别是^{此外,不能像这样使用
clicked
信号:这将导致崩溃,因为信号不可调用。
clicked()
信号的参数是从插槽接收的,这意味着如果将函数连接到该信号,该函数将接收单击的按钮:上面将打印单击按钮的文本(确定、应用、取消或其等效的本地化文本)
您正在寻找的是连接到实际按钮的单击信号,您可以使用^{} 函数获得每个按钮的单独引用:
相关问题 更多 >
编程相关推荐