2013-03-28 12 views
6

QMessageBoxにカスタムボタンが必要なアプリケーションをコーディングしています。 QTデザイナーの一例を以下に示します。PyQt4のQMessageBoxにカスタムボタンを追加するには

enter image description here

私はQMessageBoxでこれをやってみたかったです。

私はPython 2.6.4とP​​yQt4を使用しています。してください、誰も助けることができます。

答えて

18

以下は、カスタムメッセージボックスを最初から構築する例です。

import sys 
from PyQt4 import QtCore, QtGui 


class Example(QtGui.QDialog): 
    def __init__(self, parent=None): 
     super(Example, self).__init__(parent) 

     msgBox = QtGui.QMessageBox() 
     msgBox.setText('What to do?') 
     msgBox.addButton(QtGui.QPushButton('Accept'), QtGui.QMessageBox.YesRole) 
     msgBox.addButton(QtGui.QPushButton('Reject'), QtGui.QMessageBox.NoRole) 
     msgBox.addButton(QtGui.QPushButton('Cancel'), QtGui.QMessageBox.RejectRole) 
     ret = msgBox.exec_() 


if __name__ == "__main__": 
    app = QtGui.QApplication(sys.argv) 
    ex = Example() 
    ex.show() 
    sys.exit(app.exec_()) 
+0

私があなただったら、はいといいえの2つのボタンを使用しますが、キャンセルはあいまいです。 –

+1

ありがとう、これはまさに私が欲しかったものです。 –

関連する問題