![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Динамика [D7, WinXP]
Del_programmer © (2005-10-12 16:23:00)Как мне в цикле создать динамически N Эдитов?
Anatoly Podgoretsky (2005-10-12 19:35:00) [1]Del_programmer © (12.10.05 17:01) [11]
А я чувствую, что это не мы
Digitman (2005-10-12 18:27:00) [2]
> Leonid Troyanovsky © (12.10.05 18:12) [22]
там и варимся) ... давно уже)
Leonid Troyanovsky (2005-10-12 18:12:00) [3]
> Digitman © (12.10.05 18:05) [20]
> ты дурень или где ? ты Паскаль знаешь или куда ?
Эх..хе. Не положено так.
Назвавший своего брата безумным достоин геены огненной.
--
Regards, LVT.
Leonid Troyanovsky (2005-10-12 18:08:00) [4]
> jack128 © (12.10.05 17:53) [18]
> Ну, например, для последующего FindComponent.
> А зчем использовать FindComponent, если созданные эдиты
> можно в массив или TList сохранить??
Можно, конечно. Но, если очень хочется, то можно и FindComponent.
А можно, вообще, нигде не сохранять. Достаточно присвоить им Parent.
И, далее, EnumChildWindows & FindControl.
Т.е., z-order отразит их естественный порядок.
--
Regards, LVT.
Digitman (2005-10-12 18:05:00) [5]
> Del_programmer © (12.10.05 16:37) [4]
> налеплены один на другой....СУПЕР
ты дурень или где ? ты Паскаль знаешь или куда ?
for i := 0 to N do
begin
Компонент := .. создать компонент ..:
Компонент.Name := 'MyDummyComponent' + IntToStr(i);
end;
?!
MBo (2005-10-12 18:00:00) [6]>зачем Edit-ам имена задавать?
Да конечно, это в редких случаях может понадобиться.
Но ведь должен же человек научиться решать такую задачу, верно?
jack128 (2005-10-12 17:53:00) [7]Leonid Troyanovsky © (12.10.05 17:42) [17]
Ну, например, для последующего FindComponent.
А зчем использовать FindComponent, если созданные эдиты можно в массив или TList сохранить??
Leonid Troyanovsky (2005-10-12 17:42:00) [8]
> atruhin © (12.10.05 17:37) [16]
> Ну объясните мне наконец, зачем Edit-ам имена задавать?
Ну, например, для последующего FindComponent.
--
Regards, LVT.
atruhin (2005-10-12 17:37:00) [9]>>Ну вот... Такая загадка была, а ты народу развлечение испортила...
Ну объясните мне наконец, зачем Edit-ам имена задавать? А то тупой я, никак не могу придумать!
jack128 (2005-10-12 17:23:00) [10]erika © (12.10.05 17:11) [14]
Ну вот... Такая загадка была, а ты народу развлечение испортила...
erika (2005-10-12 17:11:00) [11]а почеиу нельзя в имени edit использовать i,т.е. у тебя будет edit1, edit2... editN
-=S..S=- (2005-10-12 17:07:00) [12]Если с позициами ясно то почему не ясно с именами ?
TUser (2005-10-12 17:07:00) [13]Если не надо обращаться к эдитам после их создания, то тело цикла будет таким
with TEdit.Create(Self) do begin
// назначаем св-ва Top, Left, Parent и любые другие
end;
Self - это хозяин этого эдита, эдит будет разрушен при вызове деструктора этого хозяина. Такой код можно поместитить в какой-нибудь метод класса TForm1, тогда Self - это конкретный экземпляр формы. Обычно - тот, на который помещают эдиты.
Если же придется к этим эдитам обращаться в коде где-нибудь еще, то нужна переменная, которая указывает на этот эдит. Их надо организовать в виде массива и написать такой цикл
var Edits: array [0..N-1] of TCustomEdit;
i: integer;
begin
for i:=0 to N-1 do begin
Edits[i]:=TEdit.Create (Application);
with Edits[i] do begin
// назначаем значения св-вам
end;
end;
end;
Del_programmer (2005-10-12 17:01:00) [14]нет............я чувствую вы меня не понимаете (или наоборот)..........
MBo (2005-10-12 17:00:00) [15]>я создаю 1-5 едитов сразными именами, вручную
Ну напиши пример. И подумай, какую закономерность ты использовал, чтобы задать эти имена, и как это можно автоматизировать
Del_programmer (2005-10-12 16:55:00) [16]
> как ты без цикла задаешь имя одному, или двум, или пяти
> Edit-ам?
я создаю 1-5 едитов сразными именами, вручную.....................
.......А В ЦИКЛЕ КАК ЭТО?
MBo (2005-10-12 16:51:00) [17]>Как в цикле задавать разные имена для них?
ОК, следующий шаг - как ты без цикла задаешь имя одному, или двум, или пяти Edit-ам?
Del_programmer (2005-10-12 16:44:00) [18]
> Вопрос, я надеюсь, решен ?
Нет....Как в цикле задавать разные имена для них?
С позицией там всё ясно....
Игорь Шевченко (2005-10-12 16:41:00) [19]
> дА.....и имена у них будут одинаковые......и налеплены один
> на другой....СУПЕР....
Ну вот видишь, ты уже знаешь, что нужно исправить, чтобы стало так, как надо тебе. Вопрос, я надеюсь, решен ?
Del_programmer (2005-10-12 16:38:00) [20]Удалено модератором
Примечание: Дубль