访问动态创建控件的问题(100分)

  • 主题发起人 主题发起人 huiyue
  • 开始时间 开始时间
H

huiyue

Unregistered / Unconfirmed
GUEST, unregistred user!
在formcreate是动态创建了控件
但是如何在其他的事件中访问该动态创建的控件呢?
比如说我下面的代码
for i :=0 to adoquery2.recordcount-1 do
begin
S_station :=Timage.Create(self);
S_station.Name :='b'+inttostr(adoquery2.fieldbyname('bs_m_address').asinteger);
S_station.Parent :=panel1;
//v :=i;
// temp :=s_station;
s_station.OnMouseDown :=when_mousedown;
s_station.onmouseup :=when_mouseup;
s_station.OnClick :=when_click;
S_station.Picture.LoadFromFile(faddress+'StaPic.ico');
S_station.Left :=20+paintbox1.left+adoquery2.fieldbyname('bs_x').asinteger;
S_station.Top :=20+paintbox1.top+adoquery2.fieldbyname('bs_y').asinteger;
S_station.Hint :=adoquery2.fieldbyname('bs_name').asstring;
adoquery2.Next;
if adoquery2.Eof then
break;
end;

这样,如何在事件onmousemove等中访问该动态创建的控件,而且控件的名字都是数据库中存有的
 
if sender is timage then
if (sender as timage).name='XXX' then
......
当然,你可能要检查控件名称是否存在于数据库中,祝你好运[:D]
 
接受答案了.
 
后退
顶部