Вниз
Скачать: CL | DM;

Одноименные объекты   Найти похожие ветки 

 
Archer84 ©   (2005-07-13 14:31) [0]

Мне интересно, есть ли в Delphi такая возможность, какой нибудь параметр типа index, при котором можно задать объектам, например кнопкам, одного имени. А при обработке события для этого объекта различать их по параметру. Что-то на вроде:
procedure ButtonClick;
begin
Edit1.Text:=Edit1.Text+IntToStr(Button.Index);
end;

Заранее спасибо за ответ.


 
DiamondShark ©   (2005-07-13 14:39) [1]

При обработке события объекты источники прекрасно различаются по параметру.
Sender -- это и есть ссылка на объект-источник события.


 
TUser ©   (2005-07-13 14:51) [2]

for i:=0 to ComponentCount-1 do
if Components[i] is TButton then
TButton(Components[i]).Tag:=i+1;

Edit1.Text:=Edit1.Text+inttostr((Sender as TComponent).Tag);


 
uny ©   (2005-07-13 15:37) [3]

про это есть статья
http://www.delphimaster.ru/articles/comparray.html


 
evvcom ©   (2005-07-13 16:07) [4]


> при котором можно задать объектам, например кнопкам, одного
> имени

А что, ты нашел способ, как присвоить кнопкам одно и то же имя? Бред.


 
TUser ©   (2005-07-13 16:14) [5]

> А что, ты нашел способ, как присвоить кнопкам одно и то же имя? Бред.

А почему нет?


 
evvcom ©   (2005-07-13 17:54) [6]


> А почему нет?

Ну-ка? Может мы о разном говорим? Специально сейчас проверил, у меня выходит "A component named <name> already exists".


 
ANB ©   (2005-07-13 18:01) [7]

1. Можно обращаться к кнопкам по строковому имени и генеренить его так sName := "Button"+IntToStr(i);
2. Можно загнать кнопки в массив, тогда им вообще имена не нужны, но создавать их придется динамически.


 
Гаврила ©   (2005-07-13 19:08) [8]


> [7] ANB ©


>  но создавать их придется динамически.


необязательно. Можно загнать в массив уже существующие кнопки


 
ANB ©   (2005-07-13 23:44) [9]


> Гаврила ©   (13.07.05 19:08) [8]
- можно и так, но динамически круче. Плюс намного легче словить утечку.


 
TUser ©   (2005-07-14 08:37) [10]

> evvcom ©   (13.07.05 17:54) [6]

Они могут иметь одинаковое имя "".


 
evvcom ©   (2005-07-14 08:44) [11]


> Они могут иметь одинаковое имя ""

Я бы назвал это "Они могут не иметь вообще имени". Согласись, это немного другое. Про это я знаю. Вот только у Арчера вроде как имя-то не пустое.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.023 c
3-1118302398
Lenik
2005-06-09 11:33
2005.07.31
Как из программы на делфи запустить встроенную процедуру SQL серв


3-1119365537
Alex17
2005-06-21 18:52
2005.07.31
из базы данных в EXEL


14-1120993431
jack128
2005-07-10 15:03
2005.07.31
Есть желающие покритиковать конфигурацию компа??


1-1121318797
tim
2005-07-14 09:26
2005.07.31
сворачеванье в трей


3-1118916600
А
2005-06-16 14:10
2005.07.31
Как после ClientDataSet.Open отобразить все данные в DBGrid?




   Наверх