我有一个带有两个窗口的程序,分别是main和settings。
当我在settings.py文件中的QLineEdit上运行setText时,新字符串不在GUI中,并且可以在setText代码之前看到该字符串。
当我将相同的代码放在Qt Designer生成的settingsUI文件中时,它起作用了。但是在settings.py中没有。
设置文件是包含SettingsWindow类的文件,我可以将真正的python代码放入其中。
settingsUI文件是包含GUI的文件,我使用pyuic4(或pyuic5)生成了它。
此代码可在settingsUI文件中使用:
self.browse_file.setText("safa")
但在设置文件中无效。
-更新-
import sys
from PyQt4 import QtCore, QtGui
from settingsui import Ui_Dialog
class SettingsWindow(QtGui.QDialog, Ui_Dialog):
def __init__(self):
QtGui.QDialog.__init__(self)
Ui_Dialog.__init__(self)
self.setupUi(self)
self.lineEdit.setText("safa")
print self.lineEdit.text()
Run Code Online (Sandbox Code Playgroud)
之后:self.lineEdit.setText("safa"),我在QLineEdit中看不到任何文本。
print self.lineEdit.text()输出文本“ safa”