Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.12;
Скачать: CL | DM;

Вниз

Динамическое создание компонента   Найти похожие ветки 

 
Fostr   (2006-10-26 15:59) [0]

Здравствуйте, уважаемые!

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

Подскажите пожалуйста, как это реализуется? (Или направьте на соответствующую документацию).


 
Ketmar ©   (2006-10-26 16:02) [1]

"создание контролов в runtime". исходник Dialogs.pas, опять же -- InputBox(), InputQuery()...


 
Shirson ©   (2006-10-26 16:04) [2]

var edit:tedit;

procedure TForm1.Button1Click(Sender: TObject);
var a:integer;
begin
 for a:=0 to 10 do
 begin
  edit:=Tedit.Create(Form1);
  edit.Top:=random(400);
  edit.Left:=random(400);
  edit.Parent:=form1;
 end;
end;


Направление понятно?


 
Сергей М. ©   (2006-10-26 16:04) [3]

Примерно так:

for i:=0 то некоторое количество - 1 do
 with TEdit.Create(форма-владелец) do begin
   ..
   Parent := форма-владелец;
   ..
 end;


 
Fostr   (2006-10-26 16:05) [4]

Мерси.


 
Elen ©   (2006-10-26 16:10) [5]


> Fostr

Например так :
var f:integer;
begin
//********* FOR ******************
setlength(arr,100);
for f :=0  to Length(arr)-1  do
begin
  arr[f]:=TEdit.Create(form1);
  arr[f].Top:=10*f;
  arr[f].Left:=10*f;
  arr[f].Width:=10;   arr[f].Height:=10;
  arr[f].Parent:=form1;
  arr[f].Visible:=true;
end;
//******* END FOR ****************



> Ketmar

причем тут InputBox(), InputQuery()?


 
Anatoly Podgoretsky ©   (2006-10-26 16:14) [6]

Создание любых компонент, а не только TEdit делается с помощью конструктора Create, с последующей установкой нужных свойств, никакой магии, тоже происходит и при бросании компонента на форму, вызывается конструктор.


 
Ketmar ©   (2006-10-26 16:15) [7]

>[5] Elen(c) 26-Oct-2006, 16:10
>причем тут InputBox(), InputQuery()?
при том, что в их исходных текстах делается как раз то, что надо автору. если ты заметила -- я сказал, в каком файле искать исходник для самообразования. и какие именно процедуры/функции читать.


 
Elen ©   (2006-10-26 16:17) [8]


> Ketmar

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


 
Ketmar ©   (2006-10-26 16:23) [9]

>[8] Elen(c) 26-Oct-2006, 16:17
>А-а ясно. Это пример создания компонентов на форме...
ага. остальное оставлено для тренировки мозга. тем более, что автор, похоже, вполне адекватный.



Страницы: 1 вся ветка

Текущий архив: 2006.11.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.064 c
2-1161869212
jmi2k
2006-10-26 17:26
2006.11.12
Расход памяти


15-1161605232
novill
2006-10-23 16:07
2006.11.12
На работе спорим: будет ли пылесос нагревать комнату меньше чем


2-1162189560
Чайник2
2006-10-30 09:26
2006.11.12
Как перенести содержимое поля 1-й таблицы в поле другой?


15-1161664524
Stanislav
2006-10-24 08:35
2006.11.12
Кто легально продавал свой софт?


15-1161775535
Сергиус
2006-10-25 15:25
2006.11.12
настройка EDGE