Einzelnen Beitrag anzeigen

ford

Registriert seit: 13. Mai 2006
2 Beiträge
 
#1

Button zur Laufzeit löschen...

  Alt 21. Jun 2006, 17:59
Hi!

Wenn mir jemand sagen könnte, wieso folgender Code beim Klick auf den zur Laufzeit erstellten Button einen Absturz produziert,
wäre ich sehr dankbar:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    ScrollBox1: TScrollBox;
    procedure Button1Click(Sender: TObject);
  private
    button:TButton;
    i:integer;
    procedure test(Sender:TObject);
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  button:=TButton.Create(scrollbox1);
  button.Left:=0;
  button.Top:=0;
  button.Width:=20;
  button.height:=20;
  button.Parent:=scrollbox1;
  button.Onclick:=test;
end;

procedure TForm1.test(Sender:TObject);
begin
  FreeAndNil(button);
end;

end.
Gruß,
Ford
  Mit Zitat antworten Zitat