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

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

Нажатие кнопки [D5, D7, XP]


Knob ©   (2009-05-05 17:00:00) 

На форме есть очень много кнопок, как сделать единую процедуру для всех В процедуре обязательно нужно знать какую именно кнопку нажали. Как определить её?


Игорь Шевченко   (2009-05-06 02:28:00) [1]

Германн ©   (06.05.09 02:17) [13]


> При использовании тэгов (свойство Tag в Дельфи), для "удобочитаемости"
> кода ,достаточно привести комментарии, которые нужно приводить
> всегда!


"Штирлиц — добрая душа, — вздохнул второй фронтовик, — я помню, три дня назад тут били японского шпиона, так все били ногами, а Штирлиц — нет" (с)


Германн   (2009-05-06 02:17:00) [2]

Имхо.
При использовании тэгов (свойство Tag в Дельфи), для "удобочитаемости" кода ,достаточно привести комментарии, которые нужно приводитьвсегда!


Германн   (2009-05-06 02:09:00) [3]


> Denis__ ©   (05.05.09 23:24) [11]
>
> Сделать целочисленные константы, присвоить их значения тагу
> %) Код станет читабельным) *CRAZY*
>

???


Denis__   (2009-05-05 23:24:00) [4]

Сделать целочисленные константы, присвоить их значения тагу %) Код станет читабельным) *CRAZY*


Германн   (2009-05-05 19:19:00) [5]


> tag, конечно, штука полезная, но, согласен с Игорем, применение
> его для идентификации довольно сомнительно.
>

На вкус и цвет...
:)


Palladin   (2009-05-05 18:58:00) [6]

Ну иногда случаются такие вещи, как 95% кода одинаковы, а 5% зависят от источника... а мы же не китайцы )
tag, конечно, штука полезная, но, согласен с Игорем, применение его для идентификации довольно сомнительно.


Игорь Шевченко   (2009-05-05 18:27:00) [7]

Amoeba ©   (05.05.09 17:36) [6]


> Эффективнее идентифицировать кнопки не по


И забыть этот Tag присвоить


> Тогда можно применить в коде оператор Case.


И сделать совершенно нечитабельный код.

Я конечно сильно извиняюсь, тезка, но о какой эффективности может идти речь в коде, связанном с интерфейсом пользователя ? Об эффективности по времени выполнения в этом случае говорить не приходится, об эффективности по использованию кодом памяти в Windows вообще очень трудно говорить, так как в память он попадает порциями.

На самом деле полезнее, раз уж назначаются одинаковые события на срабатывание кнопки, делать эти события независимыми от того, на какую кнопку нажали. А если они зависят, то назначать каждое событие конкретной кнопке.


Knob   (2009-05-05 17:45:00) [8]

И вам спасибо


Amoeba   (2009-05-05 17:36:00) [9]

Эффективнее идентифицировать кнопки не по
TComponent(Sender).Name
а по
TComponent(Sender).Tag

Тогда можно применить в коде оператор Case.

Естественно, каждой кнопке нужно задать свое уникальное значение Tag.


Knob   (2009-05-05 17:07:00) [10]

Спасибо за помощь


Palladin   (2009-05-05 17:05:00) [11]

сколько раз проб о вал чего? и где вы такой язык берете...

ShowMessage(TComponent(Sender).Name);


Knob   (2009-05-05 17:03:00) [12]

Сколько раз пробывал, разве в Sender можно узнать название её?


Игорь Шевченко   (2009-05-05 17:01:00) [13]

Sender


sniknik   (2009-05-05 17:01:00) [14]

> Как определить её?
Sender


Наверх

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