PyQt 消息提示框

本文总结了PyQt中消息框的三种创建方式:

1 自带型

msgBox = QtGui.QMessageBox.about(self, u'提示', u"\nAuthor: 望月又一(&Xu)!\n当前版本 v1.0.0")
msgBox.setWindowFlags(QtCore.Qt.CustomizeWindowHint)
msgBox.exec_() #模态对话框

#QMessageBox.critical(NULL, "critical", "Content", QMessageBox.Yes, QMessageBox.Yes) #带按键

 自带的messagebox 总共有 informationcriticalwarningquestion、about 五种类型,能满足最基本的需求,使用方便。

如下图:

 

 

2 简单自定义型

msgBox = QtGui.QMessageBox()
msgBox.setWindowTitle(u'提示')
msgBox.setText(u"\nAuthor: 望月又一(&Xu)!\n当前版本 v1.0.0")
msgBox.setWindowIcon(QtGui.QIcon(r':/0102.png'))

#隐藏ok按钮
msgBox.addButton(QtGui.QMessageBox.Ok)
msgBox.button(QtGui.QMessageBox.Ok).hide()

#模态对话框
msgBox.exec_()

 如下图:

 

3 复杂自定义型

def about(self):

        msgBox = QtGui.QDialog()
        
        #对话框大小位置
        desktop = QtGui.QDesktopWidget()
        screen_width = desktop.screenGeometry().width()
        screen_height = desktop.screenGeometry().height()
        msgBox.setGeometry(screen_width/2-150,screen_height/2-225,300,300)
        msgBox.setFixedSize(300,300)

        #对话框大名字 & Icon
        msgBox.setWindowTitle(u'关于')
        #msgBox.setWindowIcon(QtGui.QIcon(r':/0102.png'))
        
        #放图片的label
        label = QtGui.QLabel()
        label.setPixmap(QtGui.QPixmap(r':/0103.png'))
        label.setAlignment(QtCore.Qt.AlignHCenter)

        #放文字信息的label
        label1 = QtGui.QLabel()
        label1.setFont(QtGui.QFont("Microsoft YaHei", 12))
        pa = QtGui.QPalette()
        pa.setColor(QtGui.QPalette.WindowText,QtGui.QColor("#0x000000"));
        label1.setPalette(pa)
        label1.setText(u"\nAuthor: 望月又一(&Xu)!\n当前版本 v1.0.0")
        label1.setAlignment(QtCore.Qt.AlignHCenter)
        
        #布局
        hbox = QtGui.QVBoxLayout()
        hbox.addWidget(label)
        hbox.addWidget(label1)
        vbox = QtGui.QVBoxLayout()
        vbox.addLayout(hbox)
        msgBox.setLayout(vbox)
        
        #模态对话框
        msgBox.exec_()

 如下图:

 

转载于:https://www.cnblogs.com/wangyueyouyi/p/9990140.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值