📜  pyqt 你确定对话框 (1)

📅  最后修改于: 2023-12-03 15:33:51.074000             🧑  作者: Mango

PyQt 你确定对话框

PyQt是一款流行的Python GUI框架,可以用来开发跨平台、美观实用的GUI应用程序。其中一个常用的组件是QMessageBox,它可以用来显示信息、警告、错误、询问等对话框。而其中的“你确定对话框”是应用最广泛的一种,通常用于确认用户是否执行某项操作,如删除数据,覆盖文件等。

使用示例

在PyQt中,我们可以使用QMessageBox.question()方法来创建一个“你确定对话框”,如下所示:

from PyQt5.QtWidgets import QMessageBox

result = QMessageBox.question(self, "确认对话框", "确定要删除这条数据吗?", QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
if result == QMessageBox.Yes:
    print("用户点击了确定按钮")
else:
    print("用户点击了取消按钮")

上述代码演示了如何在PyQt中创建一个“你确定对话框”,并显示一个确认信息,提示用户是否要删除一条数据。

其中,QMessageBox的第一个参数是父窗口,这里使用self代表当前窗口。第二个参数是对话框的标题,第三个参数是对话框的提示信息,第四个参数是按钮组合,这里使用了QMessageBox.Yes | QMessageBox.No,表示显示“确定”和“取消”两个按钮。最后一个参数是默认按钮,这里使用了QMessageBox.No,表示取消为默认按钮。

在用户点击按钮后,我们通过判断返回结果来确定用户点击的是哪个按钮。如果是“确定”按钮,则执行删除数据的操作,否则取消操作。

可选参数

QMessageBox.question()方法还支持如下可选参数:

  • icon:设置对话框的图标,可选值为QMessageBox.Information、QMessageBox.Warning、QMessageBox.Critical、QMessageBox.Question。
  • defaultButton:设置默认按钮,可选值为QMessageBox.Yes、QMessageBox.No、QMessageBox.Cancel等。
  • escapeButton:设置“Esc”键对应的按钮。
  • parent:设置对话框的父窗口。
总结

“你确定对话框”是PyQt中常用的一个组件,可以用于确认用户是否执行某项操作。通过QMessageBox.question()方法的调用,我们可以轻松创建这种对话框,并根据用户反馈来决定后续操作。