Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.31;
Скачать: 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 вся ветка

Текущий архив: 2005.07.31;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.027 c
14-1120694921
vidiv
2005-07-07 04:08
2005.07.31
c++ под linux


1-1121085805
Kyro
2005-07-11 16:43
2005.07.31
Местоположение приложения


5-1090854143
sirin
2004-07-26 19:02
2005.07.31
ActiveX Control


9-1113506171
BREVIS
2005-04-14 23:16
2005.07.31
Проблема с проверкой столкновений в GLScene.


14-1121085262
Ferg
2005-07-11 16:34
2005.07.31
Stream