Ir para o conteúdo

Python e QT 6: Formas de configurar o tema Imagine do QML

PySide6 QML tema Imagine no Microsoft Windows

Existem diversas formas de realizar a configurações do tema Imagine, esse texto descreve algumas dessas formas.

Propriedade para o arquivo QML

Parâmetros:

  • Imagine.path.

Onde:

  • path: O caminho até os assets do tema que se deseja utilizar.

Exemplo:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Controls.Universal 2.12

ApplicationWindow {
    visible: true

    Imagine.path: "qrc:/utilizando/qresource"

    Column {
        anchors.centerIn: parent

        RadioButton { text: qsTr("Pequeno") }
        RadioButton { text: qsTr("Médio");  checked: true }
        RadioButton { text: qsTr("Grande") }
    }
}

Ou:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
import QtQuick 2.12
import QtQuick.Controls 2.12
import QtQuick.Controls.Universal 2.12

ApplicationWindow {
    visible: true

    Imagine.path: "caminho/relativo/até/os/assets"

    Column {
        anchors.centerIn: parent

        RadioButton { text: qsTr("Pequeno") }
        RadioButton { text: qsTr("Médio");  checked: true }
        RadioButton { text: qsTr("Grande") }
    }
}

nota

A configuração de estilo pode ser global ou definida no componente que se deseja personalizar.

Propriedades para o arquivo qtquickcontrols2.conf

Nota

Para que o arquivo qtquickcontrols2.conf funcione o mesmo deve estar listado no arquivo resources.qrc e deve ser gerado o arquivo resources_rc.py.

Parâmetros:

  • Path.

Exemplo:

1
2
[Imagine]
Path=:/utilizando/qresource

Ou:

1
2
[Imagine]
Path=caminho/relativo/até/os/asset

Python

Definindo o estilo

1
2
3
4
# 3 forma de definir o estilo do aplicativo (escolha apenas 1).
sys.argv += ['--style', 'Imagine']
os.environ['QT_QUICK_CONTROLS_STYLE'] = 'Imagine'
QQuickStyle.setStyle('Imagine')

Variáveis de ambiente

1
2
# Utilizando qresource.
os.environ['QT_QUICK_CONTROLS_IMAGINE_PATH'] = ':/utilizando/qresource'

ou:

1
2
# Utilizando o caminho relativo.
os.environ['QT_QUICK_CONTROLS_IMAGINE_PATH'] = 'caminho/relativo/até/os/asset'