[gelöst] Icon in QStandardItem

Alles rund um die Programmierung mit Qt
Antworten
MichaelS
Beiträge: 240
Registriert: 27. Dezember 2005 12:49

[gelöst] Icon in QStandardItem

Beitrag von MichaelS »

Hallo,

ein eigentlich banales Ding bringt mich fast zum Verzweifeln: Ein QTreeView-Objekt soll ein Icon anzeigen. Dieses gebe ich im Model dem Konstruktor des QStandardItem mit auf dem Weg:

Code: Alles auswählen

QStandardItem *item=new QStandardItem(QIcon(":/images/stat-pending.png"),"Irgendein Text");
Angezeigt wird aber nur der Text. Von dem Icon ist nichts zu sehen. Die Datei "stat-pending.png" ist vorhanden und in der Resource-Datei auch korrekt hinterlegt. Wenn ich an anderer Stelle testhalber einem Pushbutton eben dieses Icon zuweise, funktioniert das korrekt:

Code: Alles auswählen

myButton->setIcon( QIcon(":/images/stat-pending.png" );
Warum funktoniert das eine und das andere nicht?

Gruß Michael
MichaelS
Beiträge: 240
Registriert: 27. Dezember 2005 12:49

Re: Icon in QStandardItem

Beitrag von MichaelS »

Moin,

das Problem ist gelöst: Ich hatte die Methode data() des QStandardItemModels überschrieben, um den Font anzupassen. Dabei hatte ich auf Qt::FontRole und auf Qt::DisplayRole geprüft und entsprechende Werte zurückgegeben. Für alle anderen Rollen wurde dann aber QVariant() zurückgegeben. Nun wird stattdessen QStandardItemModel::data() aufgerufen und schon funktioniert alles korrekt. Ein wirklich blöder Fehler.

Gruß Michael
Antworten