Seite 1 von 1

QComboBox mit verschiedenen Windowmanagern

Verfasst: 17. Dezember 2008 15:20
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

Verfasst: 18. Dezember 2008 09:52
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.

Verfasst: 18. Dezember 2008 10:15
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

Verfasst: 18. Dezember 2008 11:58
von Label
Danke :)
Das hab ich total übersehen.
Ich werde es nachher mal ausprobieren.