Форум: "Основная";
Поиск по всему сайту: 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.041 c
1-57763           Stexen                2002-04-04 22:11  2002.04.18  
TStream!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1


3-57651           Boo                   2002-03-28 17:21  2002.04.18  
Есть разница м/у Open и ExecSQL в ADOQuery?


7-57902           777                   2002-01-23 08:44  2002.04.18  
Модем в он-лайне?


3-57588           stepashka             2002-03-26 19:05  2002.04.18  
как узнать зарегистрированные на сервере базы данных


1-57699           Malder                2002-04-04 21:27  2002.04.18  
Как управлять цветами в Паскале ?