如何在pyqt中使用QtQuickControls2 Style?

How to use QtQuickControls2 Style in pyqt?

我读过一篇文章The Imagine Style,可以在qml中使用c++代码风格。

哪些需要 qtquickcontrols2.confImagine Style 或者其他文件。

但是我不知道如何在pyqt风格中使用它。

我想知道是否可以在 pyqt 中使用 The Imagine Style

问题类似于 one so this post will be generic on how to use the styles of QtQuickControls 2, and my answer is based on translating the options from the official docs: Styling Qt Quick Controls 2到python:

1。在 Python 中使用 QQuickStyle(仅适用于 PySide2 和 PySide6)

from PySide2.QtQuickControls2 import QQuickStyle
# from PySide6.QtQuickControls2 import QQuickStyle

# ...
engine = QQmlApplicationEngine()
QQuickStyle.setStyle("Imagine")

2。命令行参数

app = QGuiApplication(sys.argv + ["-style", "Imagine"])

3。环境变量

os.environ["QT_QUICK_CONTROLS_STYLE"] = "Imagine"

4。配置文件

qtquickcontrols2.conf

[Controls]
Style=Imagine

resource.qrc

<RCC>
    <qresource prefix="/">
        <file>qtquickcontrols2.conf</file>
    </qresource>
</RCC>

PyQt5

pyrcc5 resources.qrc -o resources_rc.py

PySide2:

rcc -g python resources.qrc -o resources_rc.py

pyside2-rcc resources.qrc -o resources_rc.py

然后您只需在主文件中导入模块:

import resources_rc

注意:“想象”可以更改为任何样式:默认、融合、Material 和通用。