setItemWidget: Child-Widget erbt falschen CSS-Hintergrund

Alles rund um die Programmierung mit Qt
Antworten
GoaSkin
Beiträge: 103
Registriert: 13. Juni 2007 00:14
Wohnort: Darmstadt

setItemWidget: Child-Widget erbt falschen CSS-Hintergrund

Beitrag von GoaSkin »

Hallo,

ich habe in einer Anwendung eine Auswahl-Liste (QListWidget) definiert, wobei den einzelnen Einträgen jeweils über die Funktion setItemWidget ein als Rich-Text formatiertes QLabel zugewiesen wird. Das funktioniert soweit auch bis auf die Tatsache, dass die Labels immer die Hintergrund-Farbe des ListWidgets annehmen und dabei die Hintergrundfarbe der Items im ListWidget als Solche übergehen. Die Labels lassen sich per Stylesheet zwar formatieren, aber eine Definition der Hintergrundfarbe bleibt wirkungslos. Die Buchstaben zeigen um jeden Preis den Hintergrund des ListWidgets durch die Items hindurch. Jemand eine Idee, wie man das fixen kann?

In einer Schleife, die alle Items abarbeitet werden die Labels wie folgt erstellt und zugewiesen:

Code: Alles auswählen

QLabel *label = new QLabel;
label->setText("<B>irgend_eine_ueberschrift</B><BR>"+irgend_eine_zweite_zeile");
label->setAutoFillBackground(true); // testweise, auch schon draussen gelassen
listWidget->setItemWidget(listWidget->item(i),label);
Ich möchte bezwecken, dass das Label transparent die Hintergrundfarbe des Items annimmt und sich dabei auch abhängig davon, ob das Item ausgewählt ist oder nicht - entsprechend anpasst.
Antworten