unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure LabelClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
//动态创建Label控件,也可以是其它继承自TGraphicControl的控件
with TLabel.Create(self) do begin
parent:=self;
width:=50;
height:=20;
left:=20;
top:=20;
caption:='abc';
OnClick:=LabelClick; //单击事件
end;
end;procedure TForm1.LabelClick(Sender: TObject); //定义的单击事件
begin
(Sender as TLabel).Free; //删除,但总是出问题,而继承自TWinContrl的控件却没问题
end;end.//为何在动态创建的控件中的单击事件中删除却不行
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure LabelClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
//动态创建Label控件,也可以是其它继承自TGraphicControl的控件
with TLabel.Create(self) do begin
parent:=self;
width:=50;
height:=20;
left:=20;
top:=20;
caption:='abc';
OnClick:=LabelClick; //单击事件
end;
end;procedure TForm1.LabelClick(Sender: TObject); //定义的单击事件
begin
(Sender as TLabel).Free; //删除,但总是出问题,而继承自TWinContrl的控件却没问题
end;end.//为何在动态创建的控件中的单击事件中删除却不行
解决方案 »
- delphi xe toraquery 获取 oracle nvarchar2 或者 nclob 字段 乱码
- 好消息!Delphi 要出中文版了!也会支持Unicode了!
- 请问svchost.exe是不是病毒?kv2006木马一扫光提示它修改注册表。
- mouse_event(MOUSEEVENTF_WHEEL, 0, 0, -120, 0)
- delphi与db2数据库通过ODBC如何相联
- 谁能提供个把数据库显示在TREEVIEW里的例子,并有添加、删除任意层次接点的数据!!!
- 怎么修改被保存在浏览器的用户输入框里的名字和密码
- 各位帮忙看看这段代码,为什么执行以后没有效果(很急)!!!
- 惨啊,问题一直没有解决
- StringGrid控件的标题问题
- 怎样才能 使dbgrideh 拖动滚动条时不改变当前选中记录?
- Delphi XE2 Update2 xxx
鼠标事件的执行顺序是:down、click、up,如果你click释放了,在up事件里面又调用了canvas肯定会出错的。
begin
(Sender as TLabel).Free; //删除,但总是出问题,而继承自TWinContrl的控件却没问题
//如果想它不报错的话!可以试着加下面一句即可
Abort;
end;