天天看点

释放自己

procedure TForm1.Button3Click(Sender: TObject);

begin

  Sender.Free;

 end;

/*出错,用代码创建的有问题,设计时放上去没有问题,郁闷(谁能告诉我为什么),

因为Click执行完事件后还有一些后续工作,访问Sender一些资源时av,因为sender.free了,建议使用

    procedure WMLButtonDblClk(var Message: TWMLButtonDblClk); message WM_LBUTTONDBLCLK; 来代替DblClick

    procedure WMLButtonUp(var Message: TWMLButtonUp); message WM_LBUTTONUP;来代替Click

*/

procedure TForm1.FormCreate(Sender: TObject);

  with TButton.Create(Panel1) do

  begin

    Parent := Panel1;

    Top := 10;

    Left := 10;

    OnClick := Button3Click;

  end;

end;