Seite 1 von 1

QDockWidget StyleSheet

Verfasst: 11. November 2010 09:42
von bassjupp2oo8
Bei Qt 4.7 (vielleicht auch bei älteren Versionen?) funktioniert es bei mir nicht, einem QDockWidget ein StyleSheet zuzuordnen. Das wird einfach ignoriert.
QDockWidget *dw = new QDockWidget;

zB dw->setStyleSheet("QDockWidget{background: yellow;");
geht einfach nicht.

Benutzt man dw->setStyleSheet("*{background: yellow;" "QLabel{background: transparent;}");
ändert er zwar den DockWidget Hintergrund, übernimmt aber nicht die Änderungen für die Elemente im DockWidget (wie hier das Label).

Hat jemand eine Ahnung, ob das ein bekannter Bug ist?
Ist das bei euch auch so?
Hat jemand eine Idee, wie man es hinkriegen könnte?

Verfasst: 11. November 2010 09:55
von bassjupp2oo8
Also Background geht wohl eh nicht. Das einzige was bis jetzt geht ist:

setStyleSheet("*{border-image: url(:/Images/background1.png);}" );

Aber wegen des * gilt das natürlich auch für alle Widgets innerhalb des DockWidgets. Aber für die soll es eigentlich gar nicht gelten... Und sie hinterher überschreiben klappt leider auch nicht.

Verfasst: 11. November 2010 19:32
von padreigh
Es gab irgendwo mal einen Hinweis das Stylesheets noch nicht überall klappen ... mein Stand bei Qt4.6.3 - ist vielleicht bei 4.7 immer noch so?

Verfasst: 12. November 2010 08:06
von bassjupp2oo8
Den Eindruck habe ich auch. Hatte schon mehrere Probleme mit StyleSheets, die nicht funktionieren.
Schade schade...

Verfasst: 12. November 2010 08:19
von bassjupp2oo8
Kann man denn was anderes benutzen als die StyleSheets? Kann man die PainterRoutine überschreiben mit ein paar neuen Styles?
Wüsste echt nicht, wie das geht?!?