我正在尝试使用PyQt5创建一个向导,并且正在尝试使它在用户在一页上输入的输入影响到用户在下一页上看到的内容。但是,当我尝试这样做时,我只会看到索引值而不是文本。
创建一个列表,然后将索引值映射到列表中的适当位置以获取字符串似乎有点麻烦,所以有人知道PyQt是否具有更好的内置函数吗?
class IntroductionPage(QtWidgets.QWizardPage):
def __init__(self,*args,**kwargs):
super().__init__()
self.setTitle("Project Name")
self.setSubTitle("Please select one of the available projects below")
l = get_projects()
comboBox = QtWidgets.QComboBox(self)
[comboBox.addItem(i) for i in l]
layout = QtWidgets.QGridLayout()
layout.addWidget(comboBox)
self.setLayout(layout)
self.registerField("projectName",comboBox)
class TaskPage(QtWidgets.QWizardPage):
def __init__(self,*args,**kwargs):
super().__init__()
# currently returns an integer and not a string
def initializePage(self):
self.setTitle(self.field("projectName"))
class My_Wizard(QtWidgets.QWizard):
num_of_pages = 2
(intro,task) = range(num_of_pages)
def __init__(self,*args,**kwargs):
super(My_Wizard,self).__init__(*args,**kwargs)
self.setPage(self.intro,IntroductionPage(self))
self.setPage(self.task,TaskPage(self))
self.setStartId(self.intro)
慕的地6264312
相关分类