Seite 1 von 1

QComboBox mit Text füllen

Verfasst: 10. Juni 2010 23:45
von anno1988
Hallo,

ich habe folgendes Problem.

Ich finde nichts in der QComboBox Klasse um nur den Text der aktuell angezeigt wird neu zu setzen ohne dafür neue Items einzufügen.

Ich habe in der Combobox vordefinierte Werte, dies auch nicht verändert werden dürfen. Dazu habe ich die Einstellung "setInsertPolicy(QComboBox::NoInsert);" gesetzt.

Allerdings darf man den Text ändern. Ich finde aber nur die methode "currentText()", aber nichts wie z.B. "setCurrentText()".

Wie kann ich das denn lösen?

Verfasst: 11. Juni 2010 07:07
von franzf
Du musst glaub ich noch ein Auge für Doku lesen entwickeln ;)
Es fällt doch auf, dass überall "item" steht. addItem, insertItem, removeItem.
Dann schaut man unter "s" wie "set" und findet -> setItemText().
So schaut das dann aus:

Code: Alles auswählen

comboBox->setItemText( comboBox->currentIndex(), "Ich bin neuer ComboText" );

Verfasst: 11. Juni 2010 11:45
von anno1988
franzf hat geschrieben:Du musst glaub ich noch ein Auge für Doku lesen entwickeln ;)
Es fällt doch auf, dass überall "item" steht. addItem, insertItem, removeItem.
Dann schaut man unter "s" wie "set" und findet -> setItemText().
So schaut das dann aus:

Code: Alles auswählen

comboBox->setItemText( comboBox->currentIndex(), "Ich bin neuer ComboText" );
diesen Eintrag habe ich in der Doku gesehen. Allerdings ist das nicht ganz was ich meine. damit verändere ich ja den Text eines Items in der Combobox.

Durch meine Einstellung

Code: Alles auswählen

setInsertPolicy(QComboBox::NoInsert);
wird kein Item verändert, sobald ich etwas von Hand in das Edit-Feld der Textbox eintrage.

Naja ich denke da muss ich eine Vererbung der Klasse machen, da es diese Funktionalität anscheinend nicht gibt, den aktuellen Text im Edit-Feld zu verändern ohne dabei die Items anzurühren (per set-Methode).

Soweit ich gesehen habe ging es in Qt 3.3 noch, aber das ist ja schon eine Weile her.^^

Verfasst: 11. Juni 2010 11:55
von archer
Hast du mal die Methode setEditText(..) probiert?
Vieleicht funktioniert die?

Verfasst: 11. Juni 2010 12:14
von anno1988
stimmt, die könnte passen.