Übernahme von StyleSheet für enthaltene Elemente unterbinden

Alles rund um die Programmierung mit Qt
Antworten
spawnb
Beiträge: 28
Registriert: 23. März 2009 08:18

Übernahme von StyleSheet für enthaltene Elemente unterbinden

Beitrag 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 ?
Mani99
Beiträge: 244
Registriert: 15. April 2009 10:46
Wohnort: München

Beitrag 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}");
spawnb
Beiträge: 28
Registriert: 23. März 2009 08:18

Beitrag von spawnb »

super dank dir, ich blindfisch habs net gesehen/überlesen....
Antworten