如何从类中访问成员

时间:2016-02-11 08:05:45

标签: python pyqt qt-designer pyuic

我正在使用QtDesigner,它在转换为.py。

时将其代码丢弃在Class中

我必须访问类外的按钮,标签和文本框才能对它们进行操作。由于未解决的错误,我无法将我的函数放在类之上。我不想在课堂上添加我的功能..很多东西和它的混乱。所以我必须在课后提出我的功能。

这是Qt Designer转换为

的简化示例python代码结构
class MyWindowUI():
    def setupUI(self):
        self.myButton1 = 'A'
        self.myButton2 = 'B'

    def stuff(self):
        self.myButton3 = 'A'
        self.myButton4 = 'B'
    test = "something"

myBtn = MyWindowUI()
print (myBtn.test)
print (myBtn.myButton4)

所以,myBtn.test有效。它会打印出一些东西,但是,myBtn.myButton4并没有。说MyWindowUI实例没有属性' myButton4。

如何从"东西"中获取信息?和" setupUI"来自课外?

1 个答案:

答案 0 :(得分:1)

由于您没有调用方法,因此您的代码永远不会输入这些代码块来创建变量。

一种方法是在__init__中调用它们,但您可以在创建类实例后随意调用它们。请确保,您的代码通过该行。

class MyWindowUI():
    def __init__(self):
        self.setupUI()
        self.stuff()

    def setupUI(self):
        self.myButton1 = 'A'
        self.myButton2 = 'B'

    def stuff(self):
        self.myButton3 = 'A'
        self.myButton4 = 'B'
    test = "something"

myBtn = MyWindowUI()
#myBtn.setupUI()
#myBtn.stuff()
print (myBtn.test)
print (myBtn.myButton4)