欢迎访问宙启技术站
智能推送

PyQt5中如何使用QMessageBox的Cancel按钮显示提示框

发布时间:2023-12-31 19:10:52

在PyQt5中,可以使用QMessageBox类创建一个消息框,然后使用按钮属性来设置消息框的按钮。在消息框中添加Cancel按钮的方式很简单,只需要设置按钮属性为QMessageBox.Cancel即可。下面是一个使用示例:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QMessageBox

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initUI()
        
    def initUI(self):
        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('QMessageBox with Cancel Button')
        
        button = QPushButton('Show Message', self)
        button.move(100, 80)
        button.clicked.connect(self.showMessage)
        
    def showMessage(self):
        messageBox = QMessageBox()
        messageBox.setWindowTitle('Message')
        messageBox.setText('This is a message box with Cancel button.')
        messageBox.setStandardButtons(QMessageBox.Cancel)
        messageBox.setDefaultButton(QMessageBox.Cancel)
        
        clickedButton = messageBox.exec()
        if clickedButton == QMessageBox.Cancel:
            print('Cancel button is clicked')
        
if __name__ == '__main__':
    app = QApplication(sys.argv)
    mainWindow = MainWindow()
    mainWindow.show()
    sys.exit(app.exec_())

在上述示例中,首先创建了一个继承自QMainWindow的主窗口。在窗口中添加了一个按钮,并使用clicked信号连接到showMessage方法。showMessage方法创建了一个QMessageBox对象,并设置了其标题和文本内容。然后使用setStandardButtons方法将按钮属性设置为QMessageBox.Cancel。setDefaultButton方法设置了默认按钮为Cancel。最后使用exec方法显示消息框,并获取用户点击的按钮。如果用户点击了Cancel按钮,则输出相关信息。

运行以上代码,点击"Show Message"按钮,将会显示一个消息框,其中包含一个Cancel按钮。如果用户点击了Cancel按钮,则会打印出"Cancel button is clicked"的消息。

这就是在PyQt5中使用QMessageBox的Cancel按钮显示提示框的方法。希望对你有所帮助!