![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Насколько важно именовать... [WinXP]
Вопрошающий © (2007-08-04 18:50:00)...динамически создаваемые в цикле компоненты при условии, что их имя знать совсем не обязательно? Какие могут быть подводные камни?
Чтобы было понятнее о чем речь, приведу пример:
for I := 0 to 10 do
begin
Button := TButton.Create(Form1);
Button.Parent := Form1;
Button.Name <- нужно или нет?
Спасибо.
Dib@zol (2007-08-04 19:11:00) [21]> Если отсутствие имени у компонента позволяет решать эту
> проблему
Наверняка это как-то скажется при обработке некоторых сообщений. Но как - хз. Никогда так не делал... » Юрий Зотов: » Не скажется.
Вопрошающий (2007-08-04 19:08:00) [22]
> Тогда просто "для порядку" задай имена от балды ('krevedko#'+intToStr(i)),
> раз всё равно не нужны. (с) А то вдруг что? Наверняка могут
> возникнуть проблемы с удалением.
Именно потому, что могут возникнуть проблемы с одинаковыми именами (точнее, именно потому, что они возникли, были решены, но все-таки) и был задан этот вопрос. Если отсутствие имени у компонента позволяет решать эту проблему без последствий, то зачем мучаться с именованием?
Вопрошающий (2007-08-04 19:06:00) [23]2 JanMihail
Все гораздо проще, это случай аналогичный отношению TTabSheet к TPageControl (не знаю, как это грамотно сформулировать), т.е. проблем с обращением как бы нет.
Dib@zol (2007-08-04 19:04:00) [24]Тогда просто "для порядку" задай имена от балды ('krevedko#'+intToStr(i)), раз всё равно не нужны.
(с) А то вдруг что?
Наверняка могут возникнуть проблемы с удалением. » Юрий Зотов: » В данном коде - не могут.
JanMihail (2007-08-04 19:02:00) [25]Если ты к ним собираешься обращаться делай динамический массив из TButton и потом в цикле создавай. Но массив сделай переменной глобальной, иначе если после цикла заканчивается процедура, то к компонентам массива ты уже не сможешь обратиться.
Вопрошающий (2007-08-04 19:01:00) [26]Да хоть через Form.Components, какая разница.
Dib@zol (2007-08-04 18:58:00) [27]Как это?? EnumChildWindows чтоли?
Вопрошающий (2007-08-04 18:56:00) [28]Причем тут HWND? Обращаться я к ним буду так же, через цикл.
Dib@zol (2007-08-04 18:54:00) [29]Ну если ты к ним обращаться через HWND будешь - то захрен не надо. А если нет - то А КАК ЖЕ? (с)