Допустим, у меня есть приложение, использующее PyQt и Qwizard (я не могу опубликовать реальное приложение, так как оно не разрешено), и это структура.
Я хочу sh, что мое редактирование строки на странице 1 будет обязательным полем, если не установлен флажок.
Я попытался зарегистрировать поле редактирования строки, но отклонился, когда я установил флажок, он не позвольте мне продолжить.
Я думал о том, чтобы сделать logi c, если отмечен, то зарегистрируйтесь, но я не нашел, как отменить регистрацию.
import sys
from PyQt5.QtWidgets import QWidget, QApplication, QToolBar, QAction, QVBoxLayout, QHBoxLayout, QGridLayout, QLabel,\
QGroupBox, QWizard, QWizardPage, QPushButton, QLineEdit, QComboBox
import PyQt5.QtGui as QtGui
from PyQt5.QtGui import QFont
class App(QWidget):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.left = 200
self.top = 200
self.width = 640
self.height = 480
self.title = "App"
self.setWindowTitle(self.title)
self.setWindowIcon(QtGui.QIcon("logo.ico"))
self.setGeometry(self.left, self.top, self.width, self.height)
self.toolbar = QToolBar("")
########################## ToolbarButtons ###################################
self.button_add = QAction("Add", self)
self.button_add.setIcon(QtGui.QIcon("add.ico"))
self.button_add.setStatusTip("Add stuff")
self.toolbar.addAction(self.button_add)
self.button_browse = QAction("Open", self)
self.button_browse.setIcon(QtGui.QIcon("folder.ico"))
self.button_browse.setStatusTip("Open stuff")
self.toolbar.addAction(self.button_browse)
self.button_save = QAction("Save", self)
self.button_save.setIcon(QtGui.QIcon("save.ico"))
self.button_save.setStatusTip("Save stuff")
self.toolbar.addAction(self.button_save)
self.button_settings = QAction("Settings", self)
self.button_settings.setIcon(QtGui.QIcon("settings.ico"))
self.button_settings.setStatusTip("Set stuff")
self.toolbar.addAction(self.button_settings)
self.window_layout = QGridLayout()
self.setLayout(self.window_layout)
self.wizard = WizardInit()
print("Test")
self.wizard.setWizardStyle(QWizard.ModernStyle)
self.show()
self.wizard.show()
class WizardInit(QWizard):
def __init__(self):
super().__init__()
self.setWindowTitle("Wizard")
self.resize(500, 500)
self.addPage(Page1())
class Page1(QWizardPage):
def __init__(self):
super().__init__()
self.line_edit = QLineEdit()
self.registerField("Test*", self.line_edit)
self.check_box = QCheckBox("test_checkbox")
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = App()
sys.exit(app.exec_())