|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.07.2010, 01:42 | #1 |
Форумчанин
Регистрация: 25.06.2009
Сообщений: 163
|
Массив компонентов
Здравствуйте, у меня появился небольшой вопрос. У меня на форме есть несколько компонентов Button. Я слышал, что как-то можно обращаться с ними как с массивом. Вообще интересует, как задать событие для одного компонента, но так, чтобы оно действовало для всего массива. Ну например, проходила бы проверка нажатой кнопки по свойству Tag.
Вот, что уже есть: Код:
|
30.07.2010, 02:08 | #2 |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
Это нужно обязательно "рантайм" делать? А то в "дизайне" можно ж выделить сразу несколько кнопок и назначить им один обработчик...
I am the First of Cyber Evolution...
I am the First to Program your Future... |
30.07.2010, 02:25 | #3 |
Форумчанин
Регистрация: 25.06.2009
Сообщений: 163
|
Да уж, я этого не знал. Но все равно, даже если так делать, то событие создается для одной кнопки. А как, например, проверить свойство Tag в таком случае?
Я про то, что если использовать такой способ, то на какую бы кнопку ты ни нажал, произойдет одно и то же событие. Как обратиться именно к той кнопке, что нажата? |
30.07.2010, 02:36 | #4 |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
Там как раз для этого есть переменная Sender...
На форуме много примеров...
I am the First of Cyber Evolution...
I am the First to Program your Future... |
30.07.2010, 02:47 | #5 |
Форумчанин
Регистрация: 25.06.2009
Сообщений: 163
|
Ну вот, например, если мне нужно сделать кнопки с помощью Image. У меня несколько кнопок, и я хочу, чтобы при наведении (onMouseMove) на каждую из них в них загружалась другая картинка. Допустим, имена кнопок такие: Up, Down, а имена изображений, соответствующих им - Up1.bmp и Down1.bmp. Для того, чтобы не создавать по 2 лишних события на каждую кнопку, где будет всего по несколько строк кода (загрузка изображения) я и хочу создать одно событие для всех кнопок.
В этом событии и будет происходить загрузка изображения: Имя кнопки + '1.bmp'; Но у Sender нету поля 'Name'. Как же быть? |
30.07.2010, 03:18 | #6 | |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
Я ж говорил - на форуме много примеров.....
Цитата:
Код:
P.S. Лучше уж тогда из ресурсов чтоль загружать... Или в TImageList какой...
I am the First of Cyber Evolution...
I am the First to Program your Future... |
|
31.07.2010, 08:11 | #7 |
Пользователь
Регистрация: 23.04.2009
Сообщений: 53
|
But: Byte;
... Inc(But); и что будет, когда кол-во кнопок превысит 255? |
31.07.2010, 14:22 | #8 |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
Станет равным нулю... Оно как бы по кругу будет идти...
I am the First of Cyber Evolution...
I am the First to Program your Future... |
31.07.2010, 18:32 | #9 |
Форумчанин
Регистрация: 25.06.2009
Сообщений: 163
|
MonoLife, я, хоть и пишу довольно большую программу, но это не 3D Max, не Photoshop и даже не WinAmp. Поверьте, я пытаюсь мыслить глобально, но в радиусе моего обзора не проскакивала ситуация, когда количество кнопок в моей программе превысило бы 255, иначе я написал бы там Integer.
'И что будет, когда кол-во кнопок превысит 2147483647?',- написали бы тогда вы. |
31.07.2010, 20:28 | #10 | |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
А у меня бывали неожиданные баги когда я использовал беззнаковые типы в циклах и.т.п... Так что пожалуй всё-таки лучше Integer (всего-то на 3 байта больше)...
Цитата:
I am the First of Cyber Evolution...
I am the First to Program your Future... |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Массив компонентов | uzumaxy | Общие вопросы C/C++ | 3 | 16.03.2010 21:29 |
Отрисовка компонентов | Dr.Badnezz | Компоненты Delphi | 1 | 04.01.2009 16:50 |
Удаление компонентов | SanekIrk | Общие вопросы Delphi | 8 | 16.08.2008 09:26 |
Массив компонентов TEdit | Prisian | Компоненты Delphi | 6 | 28.12.2007 20:08 |