PyQt5中如何使用QMessageBox的Cancel按钮显示确认框
发布时间:2023-12-31 19:14:16
在PyQt5中,可以使用QMessageBox来创建一个具有Cancel按钮的确认框。
以下是一个使用QMessageBox的例子:
from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle("Confirmation Dialog Example")
self.setGeometry(300, 200, 400, 300)
# 创建一个按钮,用于触发确认框的显示
button = QPushButton("Show Confirmation Dialog", self)
button.setGeometry(50, 50, 300, 30)
button.clicked.connect(self.showConfirmationDialog)
def showConfirmationDialog(self):
# 创建一个确认框,并设置消息文本和按钮类型
confirmationBox = QMessageBox(self)
confirmationBox.setWindowTitle("Confirmation")
confirmationBox.setText("Are you sure you want to continue?")
confirmationBox.setStandardButtons(QMessageBox.Ok | QMessageBox.Cancel)
# 设置默认的按钮,这里将Cancel按钮设置为默认按钮
confirmationBox.setDefaultButton(QMessageBox.Cancel)
# 显示确认框,并获取用户的选择
choice = confirmationBox.exec_()
# 根据用户的选择进行相应的操作
if choice == QMessageBox.Ok:
print("User clicked Ok")
elif choice == QMessageBox.Cancel:
print("User clicked Cancel")
if __name__ == "__main__":
app = QApplication([])
mainWindow = MainWindow()
mainWindow.show()
app.exec_()
这个例子创建了一个主窗口,其中包含一个按钮。当用户点击按钮时,会弹出一个确认框,询问是否继续。确认框中的按钮包括Ok和Cancel两个选项,其中Cancel按钮被设置为默认按钮。当用户点击响应的按钮时,会在终端输出相应的信息。
通过这个例子,您可以学习如何在PyQt5中使用QMessageBox来创建一个具有Cancel按钮的确认框,并根据用户的选择进行相应的操作。
