Qt-Stylesheet-Optionen programmgesteuert festlegen?

8

Ist es möglich, Stylesheet-Werte zur Laufzeit in Qt nachzuschlagen?

Ich arbeite an einer benutzerdefinierten Schaltfläche, die von QPushButton abgeleitet wurde und für die einige Stylesheet-Eigenschaften festgelegt wurden. Ich würde gerne in der Lage sein, einige Stylesheet-Einstellungen wie die Rahmenbreite, margin , padding-top , padding-left , padding-right usw. nachzuschlagen. Ist dies überhaupt möglich, ohne widget->getStyleSheet() aufzurufen und zu analysieren? die Werte selbst?

    
Grant Limberg 13.12.2010, 23:45
quelle

2 Antworten

3

Glauben Sie nicht, Sie könnten etwas finden, indem Sie den Zeichencode durchgehen. Aber das Parsen und die Anwendung von Stylesheets ist ziemlich optimiert und erfordert eine Menge Vorverarbeitung. Ich glaube nicht einmal, dass man zum Stylesheet eines Widgets gelangen kann, wenn es tatsächlich in einem Elternteil gesetzt wurde.

    
Harald Scheirich 14.12.2010, 03:47
quelle
5

Intern erstellt Qt beim Aufruf von QApplication :: setStyleSheet () eine QStyle-Unterklasse namens QStyleSheetStyle.

Das bedeutet, dass Sie Stylesheet-Informationen über die normalen QStyle-Methoden abfragen können. Denken Sie daran, die Optionen und Widget-Parameter korrekt einzugeben, um sicherzustellen, dass Sie die richtigen Werte aus dem Stylesheet erhalten.

    
the_fly_123 23.06.2011 23:40
quelle

Tags und Links