Seite 1 von 1

Übernahme von StyleSheet für enthaltene Elemente unterbinden

Verfasst: 9. Juni 2009 11:14
von spawnb
Hallo zusammen,

ich habe in einer GUI ein QFrame welches einige PushButtons, Labels und Icons enthält. Nun habe ich mit Hilfe von setStyleSheet() mir den Rahmen/Rand des QFrame nach meinen Wünschen angepasst.
Siehe:

setStyleSheet(
"QFrame { border-width: 1px; }\n"
"QFrame { border-style: outset; }\n"
"QFrame { border-radius: 0.3em; }\n"
"QFrame { border-color: #666666;}\n"
);


Leider wird dadurch auch der Style aller enthaltener Elemente wie z.B. der Rand der Labels oder PushButtons mit übernommen und geändert.

Kann man dies verhindern, ohne jedes einzelne Element noch mal extra anzufassen ?

Verfasst: 9. Juni 2009 11:22
von Mani99
Wegen der lesbarkeit solltest du code ausschnitte in code tags posten!

Wenn du dir die doku zu qstyle sheets ansiehst, dann steht da, das du auf einzelne elemente über den "objectname" zugreifen kannst!

Code: Alles auswählen

QPushButton *myButton = new QPushButton(this);
myButton->setObjectName("MeinButton");

setStyleSheet("QPushButton#MeinButton { color: green}");

Verfasst: 12. Juni 2009 13:22
von spawnb
super dank dir, ich blindfisch habs net gesehen/überlesen....