![]() |
Button - OnClick Ereignis über Editfeld auslösen
Hey,
ist es möglich das Event OnClick eines Buttons mit einem Editfeld auszuführen. Also sobald im Editfeld ein bestimmter Text erscheint soll sofort der Button ausgelöst werden.
Delphi-Quellcode:
if edit1.Text = 'Test' then
begin // OnClick Button auslösen end; |
Re: Button - OnClick Ereignis über Editfeld auslösen
Versuch 'mal
Zitat:
Gruß Wolfgang |
Re: Button - OnClick Ereignis über Editfeld auslösen
[Error] Unit1.pas(38): Undeclared identifier: 'Clicked' ;-P
|
Re: Button - OnClick Ereignis über Editfeld auslösen
schon eher...
Delphi-Quellcode:
:hi:
if edit1.Text = 'Test' then Button1.Click;
|
Re: Button - OnClick Ereignis über Editfeld auslösen
nein, klappt nicht -,-
|
Re: Button - OnClick Ereignis über Editfeld auslösen
:?: Das hätte aber eigentlich funktionieren müssen. Wie sieht es damit aus?
Delphi-Quellcode:
if Edit1.Text = 'Test' then
Button1Click(Button1); |
Re: Button - OnClick Ereignis über Editfeld auslösen
Zitat:
vieleicht...
Delphi-Quellcode:
if edit1.Text = 'Test' then FormX.Button1.Click;
|
Re: Button - OnClick Ereignis über Editfeld auslösen
Delphi-Quellcode:
Kann es aber sein das Edit1.Text = Test nicht immer überprüft wird?
procedure TForm1.FormCreate(Sender: TObject);
begin if Edit1.Text = 'Test' then Button1Click(Button1); end; procedure TForm1.Button1Click(Sender: TObject); begin close; end; |
Re: Button - OnClick Ereignis über Editfeld auslösen
Im OnCreate kannst Du das Formular nicht schließen. Versuch es mal im OnShow.
|
Re: Button - OnClick Ereignis über Editfeld auslösen
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var test : string; begin test := Edit1.Text; if test = 'Test' then ShowMessage ('Test'); end; end. das mit close ist egal, aber auch wenn ich versuche in ShowMessage auszugeben, funktioniert es nicht -.- |
Re: Button - OnClick Ereignis über Editfeld auslösen
Delphi-Quellcode:
Was wird ausgegeben?
procedure TForm1.FormCreate(Sender: TObject);
var test : string; begin test := Edit1.Text; //if test = 'Test' then ShowMessage (test); end; end. |
Re: Button - OnClick Ereignis über Editfeld auslösen
direkt nach dem Programm-Start kommt die Message mit leerem Inhalt
|
Re: Button - OnClick Ereignis über Editfeld auslösen
Hast Du denn in der IDE dem Edit den richtigen Text zugewiesen?
|
Re: Button - OnClick Ereignis über Editfeld auslösen
Hallo,
mache es doch anders.
Delphi-Quellcode:
Was soll denn eigentlich im DoHandleButtonClick passieren ?
procedure TForm1.ButtonClick(Sender ...);
begin DoHandleButtonClick; end; procedure TForm1.DoHandleButtonClick; begin // hier ist der Button-Klick Code end; procedure XXX begin if Edit.text='bla' then DoHandleButtonClick end;
Delphi-Quellcode:
Hast du mal nen Breakpoint gesetzt ?
test := Edit1.Text;
Heiko |
Re: Button - OnClick Ereignis über Editfeld auslösen
Der String für edit1 wird ja erst im laufe des programmes eingeben, nicht in der IDE.
|
Re: Button - OnClick Ereignis über Editfeld auslösen
Dann kann er im OnCreate ja noch nicht drinstehen :roll:
|
Re: Button - OnClick Ereignis über Editfeld auslösen
Hallo,
dann gehört der Code in den OnChange-Event-Handler des Edit :wink:
Delphi-Quellcode:
kannst aber auch
procedure TForm1.CloseAction;
begin // was da auch immer passieren soll end; procedure TForm1.Button1Click(Sender: TObject); begin //irgendein Code CloseAction; end; procedure TForm1.Edit1Change(Sender: TObject); begin if Edit1.Text = 'Test' then begin //irgendein anderer Code CloseAction; end; end;
Delphi-Quellcode:
verwenden, solange in ButtonClick nicht mit Sender gearbeitet wird.
Button1Click(Self);
|
Re: Button - OnClick Ereignis über Editfeld auslösen
Okay, vielen dank! ja.. in der Procedure OnCreate bringt es mir nicht viel ;-P
|
Re: Button - OnClick Ereignis über Editfeld auslösen
Dann solltest du das OnChange-Ereignis des Edit-Feldes nutzen
Delphi-Quellcode:
Ich persönlich würde es immer vorziehen, die ButtonClicks über eine ActionList zu verwalten. Wenn man das tut, dann geht auch
procedure TForm1.Edit1Change (Sender : TObject);
begin if Edit1.Text = 'Test' then Button1.Click; end;
Delphi-Quellcode:
...
Button1.Action.Execute; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:03 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