AGB  ·  Datenschutz  ·  Impressum  







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

eingabe in edit schon vorhanden?

Ein Thema von ph0 · begonnen am 18. Mai 2007 · letzter Beitrag vom 18. Mai 2007
Antwort Antwort
ph0

Registriert seit: 17. Mai 2007
40 Beiträge
 
#1

eingabe in edit schon vorhanden?

  Alt 18. Mai 2007, 10:11
hallo,
in einem edit feld
Delphi-Quellcode:
anzahl:=anzahl+1;
daten[anzahl].name:=edit1.Text;
werden namen von produkten eingegeben, die ich dann in einer combobox gespeichert habe.
Delphi-Quellcode:
combobox1.clear;
for i:=1 to anzahl do
combobox1.Items.Add(daten[i].name)
wie kann ich jz eine abfrage machen wenn ein name schon in der combobox verwendet zum beispiel suppe, dass dieser artikel nicht noch einmal eingetragen werden darf?
gruß
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: eingabe in edit schon vorhanden?

  Alt 18. Mai 2007, 10:13
Zitat von ph0:
... ... wie kann ich jz eine abfrage machen wenn ein name schon in der combobox verwendet ...
Hai ph0,

schaue Dir mal Delphi-Referenz durchsuchenIndexOf der Items der TComboBox an.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
ph0

Registriert seit: 17. Mai 2007
40 Beiträge
 
#3

Re: eingabe in edit schon vorhanden?

  Alt 18. Mai 2007, 11:13
habe es jz hiermit versucht:
Delphi-Quellcode:
var i : integer;
    gefunden : bool;
begin
  gefunden := false;
  for i := 0 to ComboBox1.Items.Count-1 do
    if ComboBox1.Items[i] = Edit1.Text then gefunden := true;
  if not gefunden then ShowMessage('Gibts nicht!');
end;
wenn ich das ganze aber umdrehe:
Delphi-Quellcode:
  for i := 0 to ComboBox1.Items.Count-1 do
    if ComboBox1.Items[i] = Edit1.Text then gefunden:=true
    if not gefunden then
    begin
    combobox1.clear;
    for i:=1 to anzahl do
    combobox1.Items.Add(daten[i].name);
    end
dann wird es auch eingetragen, obwohl der name bereits vorhanden ist. (kleiner denkfehler?)
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#4

Re: eingabe in edit schon vorhanden?

  Alt 18. Mai 2007, 11:36
Hallo,

Sharky hat dir die Lösung eigentlich schon geschrieben.
Mit "IndexOf" gehts kanns einfach.

Hier mal ein Beispiel:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  S: String;

begin
  S := Edit1.Text;

  with ComboBox1.Items do
    begin
      If IndexOf(S) = -1 then
        Add(S)
      else
        ShowMessage('schon drin');
    end;
end;
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
ph0

Registriert seit: 17. Mai 2007
40 Beiträge
 
#5

Re: eingabe in edit schon vorhanden?

  Alt 18. Mai 2007, 11:40
ok danke jz klappts
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#6

Re: eingabe in edit schon vorhanden?

  Alt 18. Mai 2007, 11:42
Zitat von ph0:
ok danke jz klappts
Das weiss ich - habs ja schliesslich geprüft

aber weisst du auch wie das geht? - was IndexOf macht?
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Antwort Antwort


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 11:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz