Verwendung von Variablen in qt StyleSheets

9

Gibt es eine Möglichkeit, den hex / rgb-Nummern in der .qss-Datei einen Variablennamen zuzuweisen? Für eh

%Vor%

Damit kann ich die Variable am Anfang des Stylesheets definieren und den Variablennamen wo immer erforderlich verwenden, anstatt den Hex-Code zu verwenden. Auch wenn ich die Farbe ändern muss, muss ich an einer Stelle ändern und es wird durch die Datei reflektiert.

Ich habe auch nach Saas gesucht, weiß aber nicht, wie es in qt.

Danke:)

    
SAM 05.06.2012, 13:39
quelle

3 Antworten

9

Du könntest ganz leicht deinen eigenen kleinen Sass bauen:

1.Erstellen Sie eine Textdatei mit Definitionen von Variablen. Verwenden Sie ein einfaches Format wie dieses:

%Vor%

2.In der qss-Datei verwenden Sie Variablennamen:

%Vor%

3.Öffnen Sie beide Dateien und ändern Sie für jede Variable in der Definitionsdatei das Auftreten in der qss-Datei mit dem Wert (string) aus der Definitionsdatei. Es ist ein einfacher String-Ersatz.

4.Verwenden Sie das vorverarbeitete qss in der App.

Dies ist die einfachste Lösung. Sie können sowohl die Definitionsdatei als auch die qss-Datei außerhalb der App ändern und sie ohne Neukompilierung des Codes anwenden.

    
Pucor 14.06.2012, 11:19
quelle
3

Was Sie einfach erreichen wollen, ist mit reinen Qt-Stylesheets nicht möglich.

Sie können einen ähnlichen Effekt erzielen, indem Sie Ihre Stylesheets in Ihrem C ++ - Code ändern und neu laden, zum Beispiel:

%Vor%

Leider hat dies mehrere Nachteile (die Unfähigkeit, im Designer eine Vorschau anzuzeigen, Code zu ändern, anstatt ein Stylesheet), aber es ist ungefähr so ​​nah wie möglich an dem, was Sie mit Qt erreichen wollen.

    
Chris 05.06.2012 14:13
quelle
0

Hier ist eine Lösung mit sass . Installieren Sie zuerst die Python-Bindings:

%Vor%

Dann benutze es:

%Vor%     
Overdrivr 19.03.2018 09:21
quelle

Tags und Links