Einzelnen Beitrag anzeigen

Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.858 Beiträge
 
Delphi 11 Alexandria
 
#1

ComboBox Einträge editieren

  Alt 10. Jul 2010, 11:36
Hallo,

ich arbeite zurzeit mit einer ComboBox in der Einträge vorhanden sind und weitere im Programm hinzugefügt werden sollen, desweiteren sollen Einträge auch wieder gelöscht werden. Dafür wird das Event KeyDown benutzt.

Ein wenig Quelltext:

Delphi-Quellcode:
procedure TfrmMainDB_Eigenschaften.cBoxServernameKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
var i: integer;
begin
  if Key = VK_RETURN then
  begin
    if cBoxServername.ItemIndex= -1 then // Kein Eintrag vorhanden
                                              // ohne Prüfung eintragen
    begin
      cBoxServername.Items.Add(cBoxServername.Text);
    end else
    begin
      for I := 0 to cBoxServername.Items.Count - 1 do
      begin
        // Doppelte und leere Einträge verhindern
        if not (cBoxServername.Items[i] =
          cBoxServername.Text) and not (Trim(cBoxServername.Text)= '') then
        begin
          if cBoxServername.Items.IndexOf(cBoxServername.Text) < 0 then
          begin
            cBoxServername.Items.Add(cBoxServername.Text);
          end;
        end;
      end;
    end;
    Key:= 0;
  end;
  if Key = VK_DELETE then
  begin
    for I := 0 to cBoxServername.Items.Count - 1 do
    begin
      if cBoxServername.Items[i] = cBoxServername.Text then
      begin
        cBoxServername.DeleteSelected; // Angezeiter Eintrage löschen
        cBoxServername.ItemIndex := 0; // Auf den ersten Eintrag einstellen
                                       // soweit vorhanden.
        key:= 0;
        break;
      end;
    end;
  end;
  if Key = VK_BACK then
  begin

    key:= 0;
  end;
end;
Bevor ich jetzt weiter mache ist meine Frage, gibt’s dafür eigentlich eine fertige Lösung die ich noch nicht gefunden habe, oder muss man es eben alles von Hand machen?

Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat