如何从 class 访问成员

how to access members from a class

我使用 QtDesigner,当转换为 .py 时,它会将其代码放入 Class。

我必须访问 class 之外的按钮、标签和文本框才能对它们进行操作。由于未解决的错误,我无法将函数放在 class 之上。我不想在 class.. 里面添加我的函数,里面有很多东西而且很乱。所以我必须把我的功能放在 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 有效。它打印 'something',但是 myBtn.myButton4 没有。说 MyWindowUI 实例没有属性 'myButton4.

如何从 class 外部获取来自 "stuff" 和 "setupUI" 的信息?

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

一种方法是在 __init__ 中调用它们,但您可以在创建 class 实例后在任何您喜欢的地方调用它们。请确定,您的代码通过该行。

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)