Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 动态GUI页面属性错误_Python_Attributes_Pyqt4 - Fatal编程技术网

Python 动态GUI页面属性错误

Python 动态GUI页面属性错误,python,attributes,pyqt4,Python,Attributes,Pyqt4,我有一个GUI页面,其中填充了所需数量的具有唯一名称的行编辑框。我想稍后使用该名称将文本指定给相应的lineedit框。代码如下: from PyQt4 import QtCore, QtGui try: _fromUtf8 = QtCore.QString.fromUtf8 except AttributeError: def _fromUtf8(s): return s try: _encoding = QtGui.QApplication.Unic

我有一个GUI页面,其中填充了所需数量的具有唯一名称的行编辑框。我想稍后使用该名称将文本指定给相应的lineedit框。代码如下:

from PyQt4 import QtCore, QtGui
try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
    def _fromUtf8(s):
        return s

try:
    _encoding = QtGui.QApplication.UnicodeUTF8
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig)

class Ui_LoadsForm3_1(object):
    def setupUi(self, LoadsForm3_1):
        LoadsForm3_1.setObjectName(_fromUtf8("LoadsForm3_1"))
        LoadsForm3_1.resize(500, 500)
        self.scrollArea = QtGui.QScrollArea(LoadsForm3_1)
        self.scrollArea.setGeometry(QtCore.QRect(20, 180, 450, 250))
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, -293, 250, 500))
     self.scrollAreaWidgetContents.setObjectName(_fromUtf8("scrollAreaWidgetContents"))
        self.gridLayout = QtGui.QGridLayout(self.scrollAreaWidgetContents)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))

        for i in range (0,10):
            lE="lE0"+str(i)+"_P01"+"E0"+str(i)
            self.lE =QtGui.QLineEdit(self.scrollAreaWidgetContents)
            self.lE.setObjectName(_fromUtf8(lE))
            self.gridLayout.addWidget(self.lE, i, 1, 1, 1)
            self.scrollArea.setWidget(self.scrollAreaWidgetContent
        self.lE01_P01E01.setText("xyz")

if __name__ == "__main__":
    import sys app =QtGui.QApplication(sys.argv)
    LoadsForm3_1 = QtGui.QDialog()
    ui= Ui_LoadsForm3_1()
    ui.setupUi(LoadsForm3_1)
    LoadsForm3_1.show()
    sys.exit(app.exec_())

但在执行时,它是syas:AttributeError:'Ui\u LoadsForm3\u 1'对象没有属性'lE01\u P01E01'。我是Pyqt4新手,正在使用python 2.7。感谢您的帮助。谢谢

您的代码有点混乱。将属性
lE
设置为
'lE01\u P01E01'
,将
self.lE
设置为
QLineEdit
对象,但从未设置
self.lE01\u P01E01
,因此在尝试设置文本时它不存在。你的意思可能是:

    for i in range(1,10):
        lE = QtGui.QLineEdit(self.scrollAreaWidgetContents)
        lE.setObjectName(_fromUtf8(lE))
        self.gridLayout.addWidget(lE, i, 1, 1, 1)

        # e.g. set self.lE01_P01E01 to lE
        setattr(self, 'lE0' + str(i) + '_P01E0' + str(i), lE)

        self.scrollArea.setWidget(self.scrollAreaWidgetContent

    self.lE01_P01E01.setText("xyz")
但是,您不应该编辑自动生成的UI文件,因为它将被覆盖。而是从另一个.py文件调用它