Stylesheet wird nicht bei allen QTableWidgets übernommen

Alles rund um die Programmierung mit Qt
Antworten
freakonaleash99
Beiträge: 42
Registriert: 23. Juli 2017 12:35

Stylesheet wird nicht bei allen QTableWidgets übernommen

Beitrag von freakonaleash99 »

Hallo zusammen,
Ich habe als Ressource ein Stylesheet eingefügt. Dieses lade ich beim starten in meine GUI mit QFile>readall() und ui->centralwidget->setstylesheet(...).
Das Stylesheet funktioniert bei allen Widgets (QPushButton, QLine usw) problemlos, außer bei einem - und das ist mein Problem:
In meiner GUI habe ich 2 QTableWidgets. In dem einem werden die Eigenschaften des Stylesheets eingefügt (funktioniert also wie gewünscht) und das andere QTableWidget ignoriert das Stylesheet komplett. Ich habe geprüft, dass ich kein individuelles Stylesheet setzte im Source-code oder im Designer mit rechter maustaste>Set Stylesheet. Alles scheint korrekt.
Was noch komischer ist: bis vor kurzem hat alles noch korrekt funktioniert. Was genau ich geändert habe ist mir ein Rätsel. Selbst wenn ich das Widget lösche und neu, aber mit gleichem Namen, einfüge, klappt es immer noch nicht. Ich habe das Projekt auch schon komplett "bereinigt". Ohne Erfolg. Auch die Eigenschaften der beiden QTableWidgets habe ich verglichen.
Daher die Frage: gibt es noch irgendwo Einstellungsmöglichkeiten, die das Stylesheet blockieren könnte?

Vielen Dank und viele Grüße
freakonaleash99
Beiträge: 42
Registriert: 23. Juli 2017 12:35

Re: Stylesheet wird nicht bei allen QTableWidgets übernommen

Beitrag von freakonaleash99 »

Ok, folgendes habe ich herausgefunden:

Dieses Verhalten wird durch folgenden Code verursacht:

Code: Alles auswählen

QHeaderView *header = tableWidget->horizontalHeader();
header->setSectionResizeMode(5, QHeaderView::ResizeToContents)
Wenn ich die beiden Zeilen entferne, klappt es.... aber trotzdem verstehe ich nicht warum bzw wie ich es beheben kann.
Antworten