2010-12-13 11 views
8

Ist es möglich, Stylesheet-Werte zur Laufzeit in Qt nachzuschlagen?Ermitteln von Qt-Stylesheet-Optionen programmgesteuert?

Ich arbeite an einer benutzerdefinierten Schaltfläche abgeleitet von QPushButton, die einige Stylesheet-Eigenschaften festgelegt hat. Ich möchte in der Lage sein, einige Stylesheet-Einstellungen wie Rahmenbreite, margin, padding-top, padding-left, padding-right usw. nachschlagen. Ist das überhaupt möglich, ohne widget->getStyleSheet() aufzurufen und die Werte selbst auszuwerten?

Antwort

3

Denke nicht, du könntest etwas finden, indem du den Zeichencode durchschreitest. Aber das Parsen und die Anwendung von Stylesheets ist ziemlich optimiert und erfordert eine Menge Vorverarbeitung. Ich glaube nicht einmal, dass Sie das Stylesheet eines Widgets erreichen können, wenn es tatsächlich in einem Elternteil festgelegt wurde.

5

Intern ruft QApplication :: setStyleSheet() Qt eine QStyle-Unterklasse mit dem Namen QStyleSheetStyle auf.

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

Verwandte Themen