Я хочу создать графический интерфейс Python с помощью виджета QMessageBox с настраиваемыми кнопками и ролями настраиваемой кнопки. Я создал настраиваемые кнопки, но как добавить пользовательскую роль к кнопке при ее нажатии. Виджет имеет стандартные роли кнопок, но я хочу определить пользовательские функции нажатия кнопок.
Пожалуйста, помогите мне с правильным синтаксисом кода.
Ниже мой код:
import sys
from PyQt4 import QtGui,QtCore
class MYGUI(QtGui.QWidget):
def __init__(self):
super(MYGUI,self).__init__()
self.setWindowTitle("GUI")
#widgets:
self.labl=QtGui.QLabel(self)
self.labl.setFont(QtGui.QFont('Calibri', 34))
#Layout:
Layout =QtGui.QVBoxLayout()
Layout.addWidget(self.labl)
Layout.addStretch()
self.setLayout(Layout)
#Actions:
Queries={'Q1':'question 1','Q2':'question2'}
for k,val in Queries.items():
self.Choice=QtGui.QMessageBox()
self.Choice.setIcon(QtGui.QMessageBox.Question)
self.Choice.setWindowTitle(k)
self.Choice.setText(val)
self.Choice.addButton(QtGui.QPushButton('BT1',self))
self.Choice.addButton(QtGui.QPushButton('BT2',self))
self.Choice.addButton(QtGui.QPushButton('BT3',self))
self.Choice.exec_()
self.show()
def main():
app=QtGui.QApplication(sys.argv)
GUI=MYGUI()
sys.exit(app.exec_())
main()