zoukankan      html  css  js  c++  java
  • 各类消息框的使用

    代码:

     1 #coding: utf-8
     2 from PyQt4.QtGui import *
     3 from PyQt4.QtCore import *
     4 import sys
     5 
     6 QTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))
     7 
     8 class MessageBoxDlg(QDialog):
     9     def __init__(self, parent=None):
    10         super(MessageBoxDlg, self).__init__(parent)
    11         self.setWindowTitle("Messagebox")
    12         self.label = QLabel("About Qt MessageBox")
    13         questionButton = QPushButton("Question")
    14         informationButton = QPushButton("Information")
    15         warningButton = QPushButton("Warning")
    16         criticalButton = QPushButton("Critical")
    17         aboutButton = QPushButton("About")
    18         aboutqtButton = QPushButton("About Qt")
    19         customButton = QPushButton("Custom")
    20 
    21         gridLayout = QGridLayout(self)
    22         gridLayout.addWidget(self.label, 0, 0, 1, 2)
    23         gridLayout.addWidget(questionButton, 1, 0)
    24         gridLayout.addWidget(informationButton, 1, 1)
    25         gridLayout.addWidget(warningButton, 2, 0)
    26         gridLayout.addWidget(criticalButton, 2, 1)
    27         gridLayout.addWidget(aboutButton, 3, 0)
    28         gridLayout.addWidget(aboutqtButton, 3, 1)
    29         gridLayout.addWidget(customButton, 4, 0)
    30 
    31         self.connect(questionButton,SIGNAL("clicked()"),self.slotQuestion)
    32         self.connect(informationButton,SIGNAL("clicked()"),self.slotInformation)
    33         self.connect(warningButton,SIGNAL("clicked()"),self.slotWarning)
    34         self.connect(criticalButton,SIGNAL("clicked()"),self.slotCritical)
    35         self.connect(aboutButton,SIGNAL("clicked()"),self.slotAbout)
    36         self.connect(aboutqtButton,SIGNAL("clicked()"),self.slotAboutQt)
    37         self.connect(customButton,SIGNAL("clicked()"),self.slotCustom)
    38 
    39     def slotQuestion(self):
    40         button = QMessageBox.question(self, "Question", self.tr("已到达文档结尾,是否从头查找?"), QMessageBox.Ok|QMessageBox.Cancel, QMessageBox.Ok)
    41         if button == QMessageBox.Ok:
    42             self.label.setText("Question button/Ok")
    43         elif button == QMessageBox.Cancel:
    44             self.label.setText("Question button/Cancel")
    45         else:
    46             return
    47 
    48     def slotInformation(self):
    49         QMessageBox.information(self, "Information", self.tr("填写任意想告诉于用户的信息!"))
    50         self.label.setText("Information MessageBox")
    51 
    52     def slotWarning(self):
    53         button = QMessageBox.warning(self, "Warning", self.tr("是否保存对文档的修改?"), QMessageBox.Save|QMessageBox.Discard|QMessageBox.Cancel, QMessageBox.Save)
    54         if button == QMessageBox.Save:
    55             self.label.setText("Warning button/Save")
    56         elif button == QMessageBox.Discard:
    57             self.label.setText("Warning button/Discard")
    58         elif button == QMessageBox.Cancel:
    59             self.label.setText("Warning button/Cancel")
    60         else:
    61             return
    62 
    63     def slotCritical(self):
    64         QMessageBox.critical(self, "Critical", self.tr("提醒用户一个致命的错误!"))
    65         self.label.setText("Critical MessageBox")
    66 
    67     def slotAbout(self):
    68         QMessageBox.about(self, "About", self.tr("About 示例"))
    69         self.label.setText("About MessageBox")
    70 
    71     def slotAboutQt(self):
    72         QMessageBox.aboutQt(self, "About Qt")
    73         self.label.setText("About Qt MessageBox")
    74 
    75     def slotCustom(self):
    76         customMsgBox = QMessageBox(self)
    77         customMsgBox.setWindowTitle("Custom message box")
    78         lockButton = customMsgBox.addButton(self.tr("锁定"), QMessageBox.AcceptRole)
    79         unlockButton = customMsgBox.addButton(self.tr("解锁"), QMessageBox.ActionRole)
    80         cancelButton = customMsgBox.addButton("cancel", QMessageBox.ActionRole)
    81         customMsgBox.setText(self.tr("这是一个自定义的消息框!"))
    82         customMsgBox.exec_()
    83 
    84         button = customMsgBox.clickedButton()
    85         if button == lockButton:
    86             self.label.setText("Custom MessageBox/Lock")
    87         elif button == unlockButton:
    88             self.label.setText("Custom MessageBox/Unlock")
    89         elif button == cancelButton:
    90             self.label.setText("Custom MessageBox/Cancel")
    91 
    92 app = QApplication(sys.argv)
    93 MessageBox = MessageBoxDlg()
    94 MessageBox.show()
    95 app.exec_()

  • 相关阅读:
    python 实现redis订阅发布功能
    python装饰器实现对异常代码出现进行监控
    回首2017 展望2018
    结合jira搭建自动化测试平台
    安装YApi 接口管理平台
    Django 连接mysql数据库中文乱码
    在django admin中添加自定义视图
    django 模型models
    用户行为分析数据库设计
    vCenter Server 6 Standard
  • 原文地址:https://www.cnblogs.com/nju2014/p/4505333.html
Copyright © 2011-2022 走看看