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

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

With Tpanel.Create(scroolbox).... [D6, WinXP]


Страницы:   1 2 3 4 5 6

Ragazor ©   (2005-09-09 11:37:00) 

Делается следующее, n количетво раз:
With Tpanel.Create(scroolbox) do .....

на созданной панели нужно создать таким же макаром 2 едита
With TEdit.Create(???)
Как это сделать?


Плохиш   (2005-09-09 12:38:00) [101]


> Digitman ©   (09.09.05 12:31) [13]
> а переменные-то тут причем ?!

Человек просто не знает про локальные переменные и ООП для него тёмный лес :-(


Ragazor   (2005-09-09 12:37:00) [102]

имеются ввиду переменные для Tpanel & Tedit


Digitman   (2005-09-09 12:31:00) [103]


> Ragazor   (09.09.05 12:29) [11]


а переменные-то тут причем ?!


Ragazor   (2005-09-09 12:29:00) [104]

для Dilmo

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


Digitman   (2005-09-09 12:29:00) [105]


> Никаких переменных тут быть не может


а Cidx, по-твоему, - это не переменная ?


Dilmo   (2005-09-09 12:26:00) [106]

Чтото не понял я чем тебя мой вариант не устроил, но в принципе главное чтобы работало ;)


Ragazor   (2005-09-09 12:23:00) [107]

нашел решение

...
with TPanel.Create(ScrBx) do begin
   Parent := ScrBx;
   Align := alTop;
   Width := 30;
   BevelOuter := bvLowered;
   BevelInner := bvRaised;
   Tag := Aindex; // procedure input param
   Pnlhdl := Handle; //var Pnlhdl: HWND
   Cidx := ComponentIndex; //var Cidx: integer
 end;
 CreateEdit(Cidx, 40, ATRGtext);
 CreateEdit(Cidx, 260, ADESCRtext);
...

function CreateEdit(ATag, Aleft: integer; Txt: Widestring): boolean;
   begin
     with TEdit.Create(Components[Atag]) do begin
       Parent := FindControl(Pnlhdl);
       Left := ALeft;
       Top  := 5;
       Caption := Txt;
     end;  
   end;


Dilmo   (2005-09-09 12:14:00) [108]

ну блин, не используй константу, подставляй переменное значение в цикл, смысл то не меняется


Digitman   (2005-09-09 12:13:00) [109]


> Ragazor   (09.09.05 11:57) [3]


> Причем много, N штук
>  и без free


ценнейшие комментарии


> Никаких переменных тут быть не может


мыль веревку.
ибо при таких претензиях задача не имеет решения.


Ragazor   (2005-09-09 12:11:00) [110]

const
maxPanel = n;
maxEdit = m;
не катит.

n - в смыле неизвестное количество, предположим, бесконечно


Плохиш   (2005-09-09 12:02:00) [111]


> Ragazor   (09.09.05 11:59) [4]
> Мне нужно их создавать динамически по нажатию кнопки. Причем
> много, N штук.
> Никаких переменных тут быть не может.

Понятно. Обсуждение вопросов религии производится в конференции "Потрепаться".

PS. Книжки бы что ли почитал.


Ragazor   (2005-09-09 11:59:00) [112]

Мне нужно их создавать динамически по нажатию кнопки. Причем много, N штук.
Никаких переменных тут быть не может.


Ragazor   (2005-09-09 11:57:00) [113]

сказал же n количество раз... и без free!


Dilmo   (2005-09-09 11:56:00) [114]

const
 maxPanel = n;
 maxEdit = m;
var
 newPanel: TPanel;
 newEdit: TEdit;
 i, j: integer;
begin
 for i:=1 to maxPanel do begin
   newPanel := TPanel.Create(MainForm);//MainForm - owner
   newPanel.Parent := scroolbox; // если надо чтобы на контрол  легла
   newPanel.Visible := true; //если надо визибл
   newPanel.Alignment := .. //если надо алигн
   newPanel.top(Left. Height, Width);//размеры и положение
   for j:=1 to maxEdit do begin
     newEdit := TEdit.Create(MainForm);
     newEdit.Parent := newPanel;//на панель положить
     newEdit.Top(Left, Height, Width);//размеры и положение осительно панели
     newEdit.Visible := true;//показать
   end;
 end;
end;


Плохиш   (2005-09-09 11:44:00) [115]

Что, религиозный запрет на временные переменные?


Страницы:   1 2 3 4 5 6

Наверх

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