AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ComboBox Einträge editieren

Ein Thema von Chemiker · begonnen am 10. Jul 2010 · letzter Beitrag vom 17. Jul 2010
 
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.666 Beiträge
 
Delphi 12 Athens
 
#7

AW: ComboBox Einträge editieren

  Alt 12. Jul 2010, 09:47
[Edit]
if cBoxServername.Items.Count > 0 then es müssen min. 2 Einträge vorhanden sein, damit die Bedingung zutrifft.
[/Edit
Das wäre mir aber neu. Count gibt die Anzahl der Elemente zurück, d.h. ein Count > 0 heißt mindestens ein Element vorhanden.

[edit] OK, hier noch einmal eine überarbeitete Version:
Delphi-Quellcode:
procedure TForm1.cBoxServernameKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var idx: integer;
begin
  //Index einmalig ermitteln
  idx := cBoxServername.Items.IndexOf(cBoxServername.Text);
  //case statt if -> IMHO übersichtlicher und schneller
  case Key of
    VK_RETURN: begin
                 //wenn Text nicht vorhanden und
                 //nicht nur aus Leer- bzw. Steuerzeichen bestehend -> eintragen
                 if (idx = -1) and (trim(cBoxServername.Text) <> '') then
                   cBoxServername.Items.Add(cBoxServername.Text);
               end;
    VK_DELETE: begin
                 //wenn Eintrag gefunden
                 if idx > -1 then
                   begin
                     //Eintrag löschen
                     cBoxServername.Items.Delete(idx);
                     //Erst einmal den alten Text löschen
                     cBoxServername.Text := '';
                     //-> wird ggf. durch geänderten Index neu gesetzt
                     if cBoxServername.Items.Count > 0 then
                       cBoxServername.ItemIndex := 0;
                     //notwendig, da Anzeige sonst nicht aktualisiert wird
                     Key := 0;
                   end;
               end;
  end;
end;

procedure TForm1.cBoxServernameKeyPress(Sender: TObject; var Key: Char);
begin
  //"Bimmeln" unterbinden
  if Key = sLineBreak[1] then
    Key := #0;
end;
[/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH (12. Jul 2010 um 10:32 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz