情况我大概描述一下
比如我想动态创建一个控件,比如TEDIT,然后想给TEDIT.ONKeyDown赋一段代码,以执行相应的程序
这段代码用过程写下来
请教如果将这个过程赋给事件执行呢
最好有实例代码
谢谢!!!!!!!!!!
比如我想动态创建一个控件,比如TEDIT,然后想给TEDIT.ONKeyDown赋一段代码,以执行相应的程序
这段代码用过程写下来
请教如果将这个过程赋给事件执行呢
最好有实例代码
谢谢!!!!!!!!!!
Shift: TShiftState);
begin
//.................
end;
//上面是过程定义procedure TForm1.Button1Click(Sender: TObject);
begin
EditNew:=TEdit.Create(Form1);
//EditNew.xxx ====
EditNew.OnKeyDown:=Module1.Edit1KeyDown;
end;
比如我想动态创建一个控件,比如TEDIT,然后想给TEDIT.ONKeyDown赋一段代码,以执行相应的程序
这段代码用过程写下来
请教如果将这个过程赋给事件执行呢
最好有实例代码
谢谢!!!!!!!!!!// 下面举个例子:
// 说明:MyKeyDown是自己定义的事件,在在点击Button1时候把默认的Edit.OnKeyDown 事件
// 替换为MyKeyDown事件。
// 显示效果是:单击窗体的时候弹出‘测试自定义事件!’提示信息。
// 如有问题,留言继续讨论。 procedure TForm1.MyKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Sender is TEdit then
begin
ShowMessage('测试自定义事件!');
end;
end;//动态创建Edit并且将自定义的MyKeyDown赋与Edit的OnKeyDown
procedure TForm1.Button1Click(Sender: TObject);
begin
with TEdit.Create(Self) do
begin
Parent := Self;
Left := 10;
Top := 10;
OnKeyDown := MyKeyDown;
end;
end;
注意要先声明以下:
private或public下面均可.procedure MyKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);