![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нажатие кнопки [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