gpt4 book ai didi

python - 在 PySide 中使用 QUiLoader 和 UI 文件在运行时动态创建用户界面

转载 作者:太空狗 更新时间:2023-10-30 00:11:53 27 4
gpt4 key购买 nike

我真的很难将插槽从 Python 连接到 Qt Designer UI 文件。我已经完成了所有可以在 PySide 上找到的教程(例如:http://zetcode.com/gui/pysidetutorial/eventsandsignals/)

在代码中设置 GUI 非常容易,但我们真的很想使用 Qt Designer 和 UI 文件。

其他一些线程只是指出使用 pyuic.ui 转换为 .py 文件,但如果可能的话我真的会喜欢在运行时这样做。

到目前为止,这是我的代码。我不知道如何将 connectBtn 连接到 UI 文件中的 Connect :

def initUI(self):      

loader = QUiLoader()
file = QFile("designer_test.ui")
file.open(QFile.ReadOnly)
myWidget = loader.load(file, self)
#print(dir(myWidget))
file.close()

layout = QtGui.QVBoxLayout()
layout.addWidget(myWidget)
self.setLayout(layout)

connectBtn = QtGui.QPushButton("Connect", self)

connectBtn.clicked.connect(self.connectClicked)

myWidget.setWindowTitle('Window')
myWidget.show()

def connectClicked(self):
print("works")

最佳答案

你检查过这个页面了吗:Using a Designer UI File in Your Application

它适用于 C++,但我认为这些概念与您尝试在 Python 中执行的操作相同。

根据该页面,要获取由 Ui 文件创建的小部件,您需要调用 findChild()。

此外,this question .

关于python - 在 PySide 中使用 QUiLoader 和 UI 文件在运行时动态创建用户界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8492594/

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