QComboBox mit verschiedenen Windowmanagern

Alles rund um die Programmierung mit Qt
Antworten
Label
Beiträge: 55
Registriert: 15. August 2008 10:03

QComboBox mit verschiedenen Windowmanagern

Beitrag von Label »

Hola!
Ich habe folgendes Problem:
Ich habe ein Programm geschrieben, welches unter anderem eine QComboBox beinhaltet. Die QComboBox soll 50 px breit sein (das ist sie auch :) ).
Bei meinem Windowmanager (Metacity) klappt alles wunderbar. Die QComboBox ist 50 px breit und das Popup passt sich automatisch dem längsten Item an. Mein Programm soll aber auf einem Rechner laufen der den Windowmanager xfwm4 hat. Bei diesem Windowmanager wird das Popup nicht in der Breite angepasst sondern es ist und bleibt so breit wie die Combobox an sich ist. D.h. das man die längeren Items darin nicht mehr komplett lesen kann.

Gibt es irgendeine Lösung, wie man der QComboBox sagen kann, dass sich ihr Popup automatisch anpassen soll? Z.B. irgendein Flag oder so.
ODER
Gibt es eine Möglichkeit die Breite des Popups (NUR des Popups) festzulegen?

mfg Label
Label
Beiträge: 55
Registriert: 15. August 2008 10:03

Beitrag von Label »

Ich hab jetzt Abkürzungen rein geschrieben. Das sieht zwar nicht sonderlich gut aus, aber ist immerhin besser als nur den ersten und den letzten Buchstaben eines längeren Strings lesen zu können.
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Das Popup ist ein normales Wdget, welches du holen und setzen kannst.
Schau mal
* http://doc.trolltech.com/4.4/qcombobox.html#view
* http://doc.trolltech.com/4.4/qcombobox.html#setView
Das Objekt, das view() liefert, ist nicht const. Somit kannst du alles mit dem machen, was du willst.
Somit auch Flags übergeben :)

Ich hoffe das funktioniert auch so.

Grüße
Franz
Label
Beiträge: 55
Registriert: 15. August 2008 10:03

Beitrag von Label »

Danke :)
Das hab ich total übersehen.
Ich werde es nachher mal ausprobieren.
Antworten