![]() |
Re: Listbox suche (Live) Buchstabenfolge
steht alles im KeyPress des Edits.
|
Re: Listbox suche (Live) Buchstabenfolge
Dann schreib es mal ins OnChange, das hat außerdem den Vorteil, dass Du auf die Zwischenablage reagieren kannst.
|
Re: Listbox suche (Live) Buchstabenfolge
Guck mal, du hast folgenden Code:
Delphi-Quellcode:
Schöner wäre es übrigens so:
procedure TForm1.SucheditKeyPress(Sender: TObject; var Key: Char);
begin if Suchedit.text='' then else Mailerlistbox.Items.Text:=Merkliste; FilterItems(Mailerlistbox.Items,Suchedit.Text); end;
Delphi-Quellcode:
Ich vermute, die beiden Anweisungen nach dem "else" sollen nur ausgeführt werden, wenn der String leer ist, also fehlen hier "begin" und "end (oder auch nicht, wenn es so gewollt ist):
procedure TForm1.SucheditKeyPress(Sender: TObject; var Key: Char);
begin if Suchedit.text <> '' then Mailerlistbox.Items.Text := Merkliste; FilterItems(Mailerlistbox.Items, Suchedit.Text); end;
Delphi-Quellcode:
Gleiches gilt für deine "then else"-Lösung.
procedure TForm1.SucheditKeyPress(Sender: TObject; var Key: Char);
begin if Suchedit.text <> '' then begin Mailerlistbox.Items.Text := Merkliste; FilterItems(Mailerlistbox.Items, Suchedit.Text); end; end; Du kannst es natürlich auch so machen:
Delphi-Quellcode:
Edit: Und richtig, OnChange ist besser geeignet.
procedure TForm1.SucheditKeyPress(Sender: TObject; var Key: Char);
begin if Suchedit.text = '' then // fülle die ganze ListBox else begin Mailerlistbox.Items.Text := Merkliste; FilterItems(Mailerlistbox.Items, Suchedit.Text); end; end; |
Re: Listbox suche (Live) Buchstabenfolge
Ja funzt, aber das alte Problem, wenn ich den letzten Buchstabe lösche, dann macht er das nochmal durch und danach müsste er es nochmal machen macht er aber nicht. logich, denn ich lösche den letzten Buchstaben den erkennt er noch als bedingung und die '' bedingung wird nicht aufgerufen
|
Re: Listbox suche (Live) Buchstabenfolge
So funktionierts
Delphi-Quellcode:
Ich danke euch :)
procedure TForm1.SucheditChange(Sender: TObject);
begin if Suchedit.text <> '' then begin Mailerlistbox.Items.Text := Mailerliste; FilterItems(Mailerlistbox.Items, Suchedit.Text); end; if Suchedit.text = '' then Mailerlistbox.Items.Text := Mailerliste; end; |
Re: Listbox suche (Live) Buchstabenfolge
"else" sagt Dir aber etwas? :zwinker:
|
Re: Listbox suche (Live) Buchstabenfolge
DeddyH gut das du das ansprichst, da ich da immer ein problem habe und das dann sos chreibe wie du es da siehst.
also wenn zwei Sachen eintreten kann ich kein else mehr schreiben da spinnt mein Delphi rum. 2 Bedingungen GEHT NICHT
Delphi-Quellcode:
1 Bedingung GEHTif blabla = blabla then begin blabla := blabla; muma:=muma end else
Delphi-Quellcode:
if blabla = blabla then begin blabla := blabla end else |
Re: Listbox suche (Live) Buchstabenfolge
Sicher, dass Du keinen anderen Fehler machst? So wie beschrieben sollte das eigentlich immer gehen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:20 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