Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];




Вниз

как определить имя компонента вызвавшего событие 


Yuriy   (2002-04-06 18:24) [0]

Есть некий код
.....

procedure ClickButton(Sender: TObject);
procedure TForm1.CreateMyButton(....);

var
MyButton: array of TButton;

implementation

procedure TForm1.CreateMyButton(....);
.........
begin
.........
SetLength(MyButton, i1 + 1);
for i1:= 0 to i2 do
begin
MyButton[i1] := TButton.Create(Application);
MyButton[i1].Parent := Form1;
MyButton[i1].OnClick := ClickButton;
.............
end
...........
end;

procedure ClickButton(Sender: TObject);
begin
...............
end;

end.

Т.е. создается динамический массив (скажем кнопок) и при нажатии на любую из них вызывается одна и таже процедура оброботки нажатия. Можно ли определить имя кнопки вызвавшей событие?



MBo   (2002-04-06 18:30) [1]

по Sender
например так
is Sender is TButton
then S:=TButton(Sender).Name

только при создании кнопок имя задавай



Anatoly Podgoretsky   (2002-04-06 18:36) [2]

Если Sender наследник от TComponent то .name




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.71 MB
Время: 0.021 c
3-57615           sysoper               2002-03-28 07:10  2002.04.18  
Ошибка в IB5.6 +Win2000 server+sp2


7-57903           prosof                2001-11-06 12:55  2002.04.18  
Видео в полный экран


3-57642           Aidan                 2002-03-28 16:15  2002.04.18  
VCL для Crystal Reports 6.0 - где взять?


3-57649           Дмитрий_Ч             2002-03-28 13:14  2002.04.18  
Ну скажмите наконец!!!!


1-57691           GovoRun               2002-04-07 13:13  2002.04.18  
OpenDialog