Pyside2 with Qt Designer - 使用 QUiLoader() 时忽略资源(图标)
Pyside2 with Qt Designer - Resource(icons) ignored when using QUiLoader()
在 Qt Designer 中,我在资源浏览器中定义了几个图标,并将它们附加到按钮和操作上。 Designer 预览显示图标。图标存储在 icons.qrc 文件中。
但是当我加载 UI 文件时:
class MyQtApp():
def __init__(self):
super().__init__()
self.ui = QUiLoader().load("ui/main.ui")
self.ui.show()
if __name__ == '__main__':
app = QtWidgets.QApplication([])
my_app = MyQtApp()
app.exec_()
图标丢失。它们不会出现在按钮上。
我不介意使用 :
编译 icons.qrc
pyside2-rcc.exe icons.qrc -o icons_rc.py
但是,如果我使用 QUiLoader().load(),我如何才能将 link icons_rc.py 添加到我的代码中呢?
PS:当然,当我同时使用资源和ui编译器(pyside2-uic.exe和pyside2-rcc.exe)时,我不会有这个问题,但我更喜欢使用 QUiLoader().load() 如果可能的话。
您唯一需要做的就是在您的主文件中导入 icons_rc.py。
只需添加语句
import icons_rc.py
在你文件的开头就是这样。这对我有用。
在 Qt Designer 中,我在资源浏览器中定义了几个图标,并将它们附加到按钮和操作上。 Designer 预览显示图标。图标存储在 icons.qrc 文件中。
但是当我加载 UI 文件时:
class MyQtApp():
def __init__(self):
super().__init__()
self.ui = QUiLoader().load("ui/main.ui")
self.ui.show()
if __name__ == '__main__':
app = QtWidgets.QApplication([])
my_app = MyQtApp()
app.exec_()
图标丢失。它们不会出现在按钮上。
我不介意使用 :
编译 icons.qrcpyside2-rcc.exe icons.qrc -o icons_rc.py
但是,如果我使用 QUiLoader().load(),我如何才能将 link icons_rc.py 添加到我的代码中呢?
PS:当然,当我同时使用资源和ui编译器(pyside2-uic.exe和pyside2-rcc.exe)时,我不会有这个问题,但我更喜欢使用 QUiLoader().load() 如果可能的话。
您唯一需要做的就是在您的主文件中导入 icons_rc.py。
只需添加语句
import icons_rc.py
在你文件的开头就是这样。这对我有用。