如果要发布这个事件,那么这样 TOnImageClick =procedure(Sender :TObject; Index :Integer) of object;
published property OnImageClick :TOnImageClick read FOnImageClick write FOnImageClick;procedure TYourClass.DoImageClick(Sender: TObject); begin if Assigned(FOnImageClick) then FOnImageClick(Sender,TImage(Sender).Tag); end;其中Tag值代表是哪个编号的Image for I:=0 to ACount -1 do with TImage.Create(Self) do begin Tag :=I; OnClick :=DoImageClick; end;
procedure DoImageClikc(Sender :TObject); begin ... end;然后在ImageArray创建时写 OnClick ;=DoImageClick;
begin
...
end;然后在ImageArray创建时写
OnClick ;=DoImageClick;
procedure ImageClick(obj :TObject);
当动态创建组件时直接赋值就行了。
imageArray[0].OnClick :=ImageClick;
TOnImageClick =procedure(Sender :TObject; Index :Integer) of object;
published
property OnImageClick :TOnImageClick read FOnImageClick write FOnImageClick;procedure TYourClass.DoImageClick(Sender: TObject);
begin
if Assigned(FOnImageClick) then FOnImageClick(Sender,TImage(Sender).Tag);
end;其中Tag值代表是哪个编号的Image for I:=0 to ACount -1 do
with TImage.Create(Self) do
begin
Tag :=I;
OnClick :=DoImageClick;
end;
begin
...
end;然后在ImageArray创建时写
OnClick ;=DoImageClick;