gpt4 book ai didi

python - PyQt - 加载多个 UI 文件

转载 作者:太空宇宙 更新时间:2023-11-03 19:13:01 25 4
gpt4 key购买 nike

我有多个 ui 文件,每个文件都是在 Qt Designer 中创建的。我有一个调用第一个 UI 的函数(主函数)。第一个 UI 上有一个按钮,可以调用第二个 UI 并关闭第一个 UI。

from PyQt4 import QtGui,QtCore, uic

uifile_1 = '/Users/Shared/Autodesk/maya/scripts/python/Intro_UI.ui'
form_1, base_1 = uic.loadUiType(uifile_1)

uifile_2 = '/Users/Shared/Autodesk/maya/scripts/python/objtemplate_tuner.ui'
form_2, base_2 = uic.loadUiType(uifile_2)

class CreateUI_2(base_2, form_2):
def __init__(self):
super(base_2,self).__init__()
self.setupUi(self)

class CreateUI_1(base_1, form_1):
def __init__(self):
super(base_1,self).__init__()
self.setupUi(self)
self.Establish_Connections()

def Do_ButtonPress(self):
UI_2=CreateUI_2()
UI_2.show()
self.close()
def Establish_Connections(self):
QtCore.QObject.connect(self.noncharactermeshes_Button, QtCore.SIGNAL("clicked()"),self.Do_ButtonPress)

def main():
UI_1 = CreateUI_1()
UI_1.show()

main()

问题是当我运行 main() 时什么也没有发生。另请注意,我正在为 Maya 创建此脚本并使用 PyQt4。

最佳答案

我找到了答案,事实证明我需要为我的用户界面使用全局变量。

    def Do_ButtonPress(self):
global UI_2
UI_2=CreateUI_2()
UI_2.show()

...

def main():
global UI_1
UI_1 = CreateUI_1()
UI_1.show()

关于python - PyQt - 加载多个 UI 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12272767/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com