我会说我对Python很体面,但对我来说创建GUI是一个新概念。我已经使用Qt Creator来格式化GUI和pyuic来转换file.ui中的代码。Python PyQt4 .setText拒绝变量?
我有大部分的GUI编码,但我遇到了这个问题,更新标签的文本行编辑,按钮等。所以这个GUI有一个选项窗口,从用户可以指定的主程序打开某些参数。目前,我打开选项,设置值,关闭,重新打开选项窗口,文本没有改变为新的变量值。然而,简单的字符串可以工作只有程序重新启动,变量才会“粘住”。
我正在导入一个config.py文件,其中有一个包含参数字符串的变量。这些被格式化并与所有其他标签一起设置等,但没有因某种原因而被设置。
config.py
configAttrs="clientid,oauth,123,source,123"
mainProgram.py的嵌套函数用于设置标签等
def retranslateUi(self, OptionsWindow):
OptionsWindow.setWindowTitle(_translate("OptionsWindow", "OptionsWindow", None))
self.label_MainOptions.setText(_translate("OptionsWindow", "Options", None))
confs = config.configAttrs.split(',')
clientid = str(confs[0])
oauth = str(confs[1])
cache = str(confs[2])
heightAdjust = str(confs[4])
#does NOT work when reopening options window
#does work with restart
self.lineEdit_ClientID.setText(_translate("OptionsWindow", clientid, None))
#does NOT work when reopening options window
#does work with restart
self.lineEdit_ClientID.setText('{0}'.format(clientid))
#does work when reopening options window
#does work with restart
self.lineEdit_ClientID.setText(_translate("OptionsWindow", 'string_clientid', None))
缩短上述代码的文本。*
当你说它不起作用时,你的意思是,当你再次运行你的应用程序时,它并没有显示你在关闭它之前看到了什么? – eyllanesc
我是新来的stackoverflow,这里有一个回复按钮? :D我已经向OP添加了画廊来表达问题。 –
我还是不明白你,你可以更好地解释它。 – eyllanesc