Einzelnen Beitrag anzeigen

Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#23

Re: Ein Programm ohne Units schreiben

  Alt 24. Nov 2005, 20:40
Zitat von igel457:
das geht doch und zwar so:
Delphi-Quellcode:

procedure Button1Click(sender:TObject);
begin
  application.terminate;
end;

begin
  application.initalize;
  application.titel := 'Mein erstes Programm mit Fenster!';
  application.createform(TFenster,fenster);
  application.run;
  fenster.caption := 'Hallo';
  with tbutton.create(fenster) do
  begin
    parent := fenster;
    width := 100;
    caption := 'Klickmich!';
    onclick := Button1Click;
  end;
end.
Hallo,

das wird so nicht gehen. (ich meine jetzt nicht das mit dem CreateForm, das geht auch nicht aber das wurde hier ja schon behandelt)

Was auch nicht geht ist die Zuweisung des Eventhandlers "Button1Click". Dieser ist als ganz normale Prozedur deklariert. Als Eventhandler können aber nur Methoden benutzt werden!

Es muss also heissen:

Delphi-Quellcode:
procedure TFenster.Button1Click(sender:TObject);
begin
  application.terminate;
end;
und später dann:

onclick := TFenster.Button1Click; Ohne "Button1Click" zu einer Methode zu machen, bekommst du diesen Source ja nicht einmal kompilliert.

Ciao,
Ralf
Ralf Kaiser
  Mit Zitat antworten Zitat