gpt4 book ai didi

python - 推广 PyQt 小部件

转载 作者:太空狗 更新时间:2023-10-29 20:22:07 25 4
gpt4 key购买 nike

我正在使用 PyQt 并尝试在 QtDesigner 中推广一个小部件。如果我在“头文件”字段中指定包含我的小部件子类的文件的完整模块路径,我就能让它工作。

有没有更好的方法将 QtDesigner 中的小部件提升为 PyQt 小部件而无需指定完整的模块路径?

下面是一个示例,希望能说明我在说什么:

/PythonModuleRoot/Ui/MainUi.py

from PyQt4 import QtCore, QtGui, uic
class MainUi(QtGui.QWidget):
def __init__(self):
QtGui.QWidget.__init__(self)
self.ui = uic.loadUi(os.path.join(os.path.dirname(__file__), 'MainUi.ui'), self)

/PythonModuleRoot/Ui/CustomWidget.py

from PyQt4 import QtCore, QtGui, uic
class CustomWidget(QtGui.QWidget):
def __init__(self, parent):
QtGui.QWidget.__init__(self, parent)

/PythonModuleRoot/Ui/MainUi.ui

在 MainUi.ui 中,我提升了一个小部件并将头文件字段设置为:“PythonModuleRoot.Ui.CustomWidget”。

最佳答案

我明白了,我的实际代码与我给出的简化示例略有不同。我的实际代码更像这样:

/PythonModuleRoot/Ui/MainUi.py

/PythonModuleRoot/Ui/MainUi.ui

/PythonModuleRoot/Ui/Widgets/CustomWidget.py

所以我只需要将头文件的内容更改为 MainUi 导入 CustomWidget 的方式,因此:“Widgets.CustomWidget”。这篇文章为我指出了正确的方向:http://www.mail-archive.com/pyqt@riverbankcomputing.com/msg17893.html

关于python - 推广 PyQt 小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4832695/

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