我有一个程序,有两个窗口,主要和设置。
当我在settings.py文件中的QLineEdit上运行setText时,新的字符串不在GUI中,我可以在setText代码之前看到字符串。
当我将相同的代码放在Qt Designer生成的settingsUI文件中时,它可以工作。但是在settings.py中没有。
设置文件是包含SettingsWindow类的文件,我可以在其中放入真正的Python代码。
settingsUI文件是包含GUI的文件,我使用pyuic4(或pyuic5)生成它。
这个代码在settingsUI文件:
self.browse_file.setText("safa")
但在设置文件这么想的工作。QLineEdit没有更新setText
--UPDATE--
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()
后:self.lineEdit.setText("safa")
,我看不到在QLineEdit的任何文本。
print self.lineEdit.text()
输出文本“萨法”
“不起作用”是什么意思?你能告诉我们一些代码吗? – Hyperboreus
我的意思是我不能在GUI中的QLineEdit中看到新字符串“safa”,但是如果我打印'self.browse_file.text()',我可以在终端中看到“safa”。 –
一些更多的代码可能在这里有所帮助 – embert