Autor Beitrag
nepleurepas
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 164

Win XP

BeitragVerfasst: Sa 06.09.08 17:44 
Hallo,

ich möchte eine onclick-procedure von einer anderen Procedure aufrufen. Also z.b.:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage('')
end;

procedure aufrufen
begin
TForm1.Button1Click(Sender: Tobject);\\ so funktionierts ja leider nicht
end;


Ich weiß, ich könnte auch einfach eine dritte Procedure schaffen und diese dann von den beiden anderen aufrufen. Aber ich möchte direkt die Onclick-procedure aufrufen.

Vielen Dank für Antworten
gruß stefan
LexXis
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 170
Erhaltene Danke: 3



BeitragVerfasst: Sa 06.09.08 17:46 
ausblenden Delphi-Quelltext
1:
Button1.Click;					


;)
nepleurepas Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 164

Win XP

BeitragVerfasst: Sa 06.09.08 18:07 
user profile iconLexXis hat folgendes geschrieben:
ausblenden Delphi-Quelltext
1:
Button1.Click;					


;)


thx, läuft
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Sa 06.09.08 18:18 
Wobei das mit dem Click natürlich ein sonderfall ist, weil der Button eben eine Methode Click hat, welche das Eregnis ausführt - das kann man so aber nicht immer auf alle Eregnisse übertragen. Allgemeiner geht es auch so:

ausblenden Delphi-Quelltext
1:
button1click(self);					


Wobei statt self auch ein anderes TObject angegeben werden kann, je nach dem ob man es überhaupt braucht / abfragt. Z.B. kann man auch den sender der anderen prozedur "weiterreichen".

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 06.09.08 23:46 
Das ist aber schlechter Programmierstil meiner Meinung nach.

Besser wäre es den Code im dem Klickereignis auszulagern in eine externe Routine und diese dann aufzurufen, sowohl aus dem Klickereignis der Schaltfläche als auch von der anderen Stelle im Code. Dann hat man solche Problme gar nicht erst und man hat den ausführenden Code von der Oberfläche getrennt. Wenn du den Code jetzt noch in eine andere Unit auslagerst, kannst du jede Oberfläche drumrumbauen die du willst. Desweiteren erhöht das die wiederverwertbarkeit deines Codes.