如何通过编程实现多个TmaskEdit控件的Onchange事件共享一个Procedure?
有一个Form1里有130个MaskEdit,有一个通用过程MyProcedure(Sender:TMaskEdit)想将它作为各个MaskEdit的Onchange事件响应,代码如下:
with Form1 do
begin
for i:=0 to ControlCount-1 do
begin
if (Controls[i] is TMaskEdit) then Controls[i].Onchange:= MyProcedure(Controls[i]);
end
end;
但是Form1.conrols[i]是Tcontrol它没有Onchange属性怎么办?
问题点数:20、回复次数:3Top
1 楼saoren(saoren)回复于 2001-02-24 17:36:00 得分 10
真奇怪,你怎么不这样做:按Shift,点中你全部的TMasEdit,然后在Onchange事件属性选中某个事件,这样那130 个TMaskEdit不就对应你的什么什么处理过程了。
Top
2 楼enlightenment(破冰超人)回复于 2001-02-24 17:44:00 得分 10
var
i:integer;
begin
for i:=0 to Form1.ComponentCount-1 do
begin
if (Components[i] is TMaskEdit) then
(Form1.Components[i] as TMaskEdit).OnChange:=MyProcedure;
end;
end;
Top
3 楼lpa(lpa)回复于 2001-02-24 21:29:00 得分 0
接受答案了,我更喜欢enlightenment(阿明) 的方法。Top




