Einzelnen Beitrag anzeigen

Hobbycoder

Registriert seit: 22. Feb 2017
955 Beiträge
 
#1

ComboBoxItem auswählen ohne den ComboBox.Text zu verändern

  Alt 6. Nov 2018, 19:34
Hi,

ich möchte gern folgendes realisieren:

Gegeben ist eine Combobox, in der der User wie in einem Edit Daten eingeben kann. Über das Pulldown soll er dann verschiedene Zustände auswählen können. Diese werden dann über Symbole, die im Editbereich der Combobox zeichnet werden, dargestellt. Der eigentliche Combobox.Text-Inhalt soll dabei aber nicht verändert werden.

Bisher hatte ich das mit einem stinknormalen Edit, einem Speedbutton und einem Popupmenu gelöst. Bei dem Projekt würde ich das gerne über eine Combobox allein lösen.

Ich habe das einfach mal so versucht:
Delphi-Quellcode:
procedure TTest.cbbTestChange(Sender: TObject);
begin
  // cbbText.ItemIndex:=-1; //bringt nichts
  cbbTest.Text:=FTempValue;
end;

procedure TTest.cbbTestDropDown(Sender: TObject);
begin
  FTempValue:=cbbTest.Text;
end;
Dann habe ich zwar im OnChange-Event in FTempValue den ursprünglichen Text stehen, aber nach der Zuweisung setzt die CompboBox trotzdem den ItemIndex.

Hat jemand eine Idee, wie ich das lösen könnte?
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat