Я создал объект QWizard
, который содержит несколько страниц, я попытался открыть файл, когда было нажата NextButton
конкретной страницы. Сначала я попробовал QWizard.NextButton.clicked.connect()
, пришел с: «AttributeError: объект„WizardButton“не имеет атрибута„щелкнул“»pyqt: как исправить сигнал при нажатии NextButton из QwizardPage
После этого я искал. „WizardButton“ в Qt Assistant, не может получить какие-либо полезные сигналы излучать, можно ли осуществить это как QPushButton.clicked.connect()
вот конкретная страница:
class AccountPage(QWizardPage):
def __init__(self, parent=None):
super(AccountPage, self).__init__(parent)
self.setTitle("Account Information")
NameLabel = QLabel("&Name:")
NameLineEdit = QLineEdit()
NameLabel.setBuddy(NameLineEdit)
EmailLabel = QLabel("&Email Address:")
EmailLineEdit = QLineEdit()
EmailLabel.setBuddy(EmailLineEdit)
PwdLabel = QLabel("&Password:")
PwdLineEdit = QLineEdit()
PwdLabel.setBuddy(PwdLineEdit)
self.registerField('Name*', NameLineEdit)
self.registerField('EmailAddress*', EmailLineEdit)
self.registerField('Password*', PwdLineEdit)
layout = QGridLayout()
layout.addWidget(NameLabel, 0, 0)
layout.addWidget(NameLineEdit, 0, 1)
layout.addWidget(EmailLabel, 1, 0)
layout.addWidget(EmailLineEdit, 1, 1)
layout.addWidget(PwdLabel, 2, 0)
layout.addWidget(PwdLineEdit, 2, 1)
self.setLayout(layout)
QWizard.NextButton.clicked.connect(self.setMB)
def setMB(self):
try:
with open('mb.ini', 'w') as actInfo:
actInfo.write('sj')
except IOError as err:
print('mb.ini error:' + str(err))
Можете ли вы предоставить некоторый код (см [MCVE] (http://stackoverflow.com/help/ mcve))? – Mel
@tmoreau извините, что код добавлен now – Cesc
Если 'setMB' должен вызывать, когда вы нажимаете« next », почему бы не вызвать его на следующей странице' __init__' метод? – Mel