Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Одноименные объекты [D7, WinXP]


Archer84 ©   (2005-07-13 14:31:00) 

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

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


evvcom   (2005-07-14 08:44:00) [1]


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

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


TUser   (2005-07-14 08:37:00) [2]

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

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


ANB   (2005-07-13 23:44:00) [3]


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


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


> [7] ANB ©


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


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


ANB   (2005-07-13 18:01:00) [5]

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


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


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

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


TUser   (2005-07-13 16:14:00) [7]

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

А почему нет?


evvcom   (2005-07-13 16:07:00) [8]


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

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


uny   (2005-07-13 15:37:00) [9]

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


TUser   (2005-07-13 14:51:00) [10]

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);


DiamondShark   (2005-07-13 14:39:00) [11]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо