Я искал пример this. Я написал свой код на основе этого, но я все еще не могу понять, как подключить следующую кнопку qwizard. Например, я бы хотел, чтобы он печатал имя и номер страницы каждый раз, когда нажимается следующая кнопка. То же самое с кнопкой завершения, когда нажата кнопка «Готово», мне бы хотелось, чтобы она печатала «финиш!». на консоли, в основном, чтобы знать, как подключить эти кнопки для выполнения функции на одной из страниц.Как подключить функцию страницы к следующей кнопке qwizard?
ответ
Вы можете получить кнопки через функцию {your wizard}.button({type button})
, где типы кнопок могут быть:
- QtGui.QWizard.BackButton
- QtGui.QWizard.NextButton
- QtGui.QWizard.CommitButton
- QtGui.QWizard.FinishButton
- QtGui.QWizard.CancelButton
- QtGui.QWizard.HelpButton
- QtGui.QWizard.CustomButton1
- QtGui.QWizard.CustomButton2
- QtGui.QWizard.CustomButton3
Код:
from PyQt4 import QtGui
def createIntroPage():
page = QtGui.QWizardPage()
page.setTitle("Introduction")
label = QtGui.QLabel("This wizard will help you register your copy of "
"Super Product Two.")
label.setWordWrap(True)
layout = QtGui.QVBoxLayout()
layout.addWidget(label)
page.setLayout(layout)
return page
def createRegistrationPage():
page = QtGui.QWizardPage()
page.setTitle("Registration")
page.setSubTitle("Please fill both fields.")
nameLabel = QtGui.QLabel("Name:")
nameLineEdit = QtGui.QLineEdit()
emailLabel = QtGui.QLabel("Email address:")
emailLineEdit = QtGui.QLineEdit()
layout = QtGui.QGridLayout()
layout.addWidget(nameLabel, 0, 0)
layout.addWidget(nameLineEdit, 0, 1)
layout.addWidget(emailLabel, 1, 0)
layout.addWidget(emailLineEdit, 1, 1)
page.setLayout(layout)
return page
def createConclusionPage():
page = QtGui.QWizardPage()
page.setTitle("Conclusion")
label = QtGui.QLabel("You are now successfully registered. Have a nice day!")
label.setWordWrap(True)
layout = QtGui.QVBoxLayout()
layout.addWidget(label)
page.setLayout(layout)
return page
def backprint():
print("Action: back Page: " + wizard.currentPage().title())
def nextprint():
print("Action: next Page: " + wizard.currentPage().title())
def commitprint():
print("Action: commit Page: " + wizard.currentPage().title())
def finishprint():
print("Action:finish Page: " + wizard.currentPage().title())
def cancelprint():
print("Action:cancel Page: " + wizard.currentPage().title())
if __name__ == '__main__':
import sys
app = QtGui.QApplication(sys.argv)
wizard = QtGui.QWizard()
wizard.addPage(createIntroPage())
wizard.addPage(createRegistrationPage())
wizard.addPage(createConclusionPage())
wizard.button(QtGui.QWizard.BackButton).clicked.connect(backprint)
wizard.button(QtGui.QWizard.NextButton).clicked.connect(nextprint)
wizard.button(QtGui.QWizard.CommitButton).clicked.connect(commitprint)
wizard.button(QtGui.QWizard.FinishButton).clicked.connect(finishprint)
wizard.button(QtGui.QWizard.CancelButton).clicked.connect(cancelprint)
wizard.setWindowTitle("Trivial Wizard")
wizard.show()
print("Page :" + wizard.currentPage().title())
sys.exit(wizard.exec_())
Выход:
Page :Introduction
Action: next Page: Registration
Action: next Page: Conclusion
Action: back Page: Registration
Action: back Page: Introduction
Action: next Page: Registration
Action: next Page: Conclusion
Action:finish Page: Conclusion
Я продолжаю получать: lambda: print ("Действие: назад Страница:" + wizard.currentPage(). Title())) ^ SyntaxError : недействительный синтаксис для всей функции лямбда. Я на python 2.7 – answerSeeker
@TatakaiWasumi обновить мое решение – eyllanesc
Еще раз спасибо. Я искал часы – answerSeeker
- 1. Подключить QPushButton к QWizardPage с NextButton QWizard
- 2. Переход к следующей кнопке
- 3. Как подключить действие к кнопке
- 4. Как подключить кнопку Android к кнопке веб-страницы?
- 5. Как подключить UIButton к HTML-кнопке?
- 6. Как подключить событие к кнопке в iframe
- 7. Как подключить счетчик загрузки к кнопке загрузки?
- 8. Как получить данные на кнопке и перейти к следующей кнопке?
- 9. Подключить окно сообщения к кнопке
- 10. ионной клавиатуры кнопки перехода к следующей кнопке
- 11. Как добавить функцию к кнопке?
- 12. Как применить функцию к кнопке
- 13. Как подключить счетчик обращений к кнопке
- 14. Как подключить ссылку URL к кнопке
- 15. Как подключить onClicklistener к кнопке суб-действия
- 16. Как подключить действие к кнопке в ControlsFX?
- 17. php как подключить оператор if к кнопке?
- 18. Как извлечь функцию JavaScript со следующей страницы?
- 19. Шаги jquery добавляют слушателя к следующей кнопке
- 20. Доступ к следующей кнопке event android
- 21. PyQt: Получить идентификатор определенной страницы QWizard
- 22. Не удается подключить пользовательскую IBAction к кнопке
- 23. python: привязать функцию к кнопке
- 24. Как подключить событие click к анимированной кнопке в ios
- 25. Tkinter: подключить виджет ввода к кнопке к функции
- 26. jQuery: попытка подключить функцию к onclick при загрузке страницы
- 27. Где управлять кнопкой QWizard?
- 28. Как подключить таймер к кнопке с помощью C#
- 29. Как подключить два Click Listener к кнопке в android?
- 30. Как подключить экземпляр Howler.JS к одной кнопке запуска/остановки?
это использовать некоторые 'QtGui.QWizardPage', так что, возможно, найдете документацию для этого класса: http: // do c.qt.io/qt-4.8/qwizardpage.html – furas
Я читал документы. Все еще озадачен тем, как подключить функцию к кнопкам – answerSeeker
@TatakaiWasumi попробуйте с моим кодом – eyllanesc