Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - EIntrag aus Dropdownliste löschen


freak4fun - Mo 04.12.06 18:22
Titel: EIntrag aus Dropdownliste löschen
Hallo,
ich hab eine Combobox mit mehreren Einträgen. Ich möchte den Eintrag unter der Maus, bei ausgefahrener Dropdownlist, durch drücken der "Entf"-Taste löschen. Wie mach ich das?

Ich hab versucht das im KeyUp-Event zu machen, indem ich den DropDownStatus abfrage und prüfe ob Entf gedrückt wurde, aber ich weiß nicht über welchem Item die Maus sich gerade befindet. :(

MfG
freak


elundril - Mo 04.12.06 18:27

Itematpos kann hilfreich sein! ;-)


freak4fun - Mo 04.12.06 21:38

Ja, für eine ListBox wäre das kein Problem, aber ich habe eine TComboBox. Da gibt es ItemAtPos leider nicht. :(

MfG
freak


wulfskin - Mo 04.12.06 22:35

Hilfe hilft:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure TForm1.ComboBox1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = vk_Delete then
  begin
    with TComboBox(Sender) do
      if DroppedDown then
        Items.Delete(ItemIndex);
  end;
end;
Gruß Hape!


freak4fun - Mo 04.12.06 23:41

Ok, danke. Ich hatte das im OnKeyUp, also zu spät. :roll:

MfG
freak