【发布时间】:2016-05-21 21:41:35
【问题描述】:
我使用 QtDesigner,它在转换为 .py 时将其代码放入类中。
我必须访问类之外的按钮、标签和文本框才能对它们进行操作。由于未解决的错误,我无法将我的函数放在类之上。我不想在类中添加我的函数.. 有很多东西而且很乱。所以我必须把我的功能放在课后。
这是 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.
如何从课堂外的“stuff”和“setupUI”获取信息?
【问题讨论】:
-
请阅读有关此主题的 PyQt 文档:Using Qt Designer。
-
是的,我读到了。实际的 .ui 文件对话与文档中的对话不匹配。这就是我问的原因。转换器脚本不会使用 init 创建 py 脚本,尽管我指定了这样做的标志。不过,我已经结束了,转向其他解决方案。
-
您误解了文档。显示的示例是您必须自己创建的脚本。
pyuic生成的模块应该导入到脚本中。 -
ohhhhh,我明白了.. 现在说得通了。 :) 谢谢
标签: python pyqt qt-designer pyuic