Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.12.02;
Скачать: [xml.tar.bz2];

Вниз

Как создать компонент Edit динамически?   Найти похожие ветки 

 
WFS   (2007-11-04 19:24) [0]

собсна вопрос в теме


 
Anatoly Podgoretsky ©   (2007-11-04 19:25) [1]

> WFS  (04.11.2007 19:24:00)  [0]

Компоненты создаются с помощью Create


 
WFS   (2007-11-04 19:33) [2]

Какой параметр следует указать в скобках
TEdit.Create(?)


 
Anatoly Podgoretsky ©   (2007-11-04 19:35) [3]

> WFS  (04.11.2007 19:33:02)  [2]

F1


 
Efir   (2007-11-04 19:36) [4]

Родителя, я так понимаю в твоём случае это будет форма.

MyEdit:=TEdit.Create(Form1);
MyEdit.Parent:=Form1;


 
WFS   (2007-11-04 19:55) [5]

Тогда такой вопрос.
Если имеются много эдитов с номерами от 1 до 1000, то можно свойству Text каждого эдита в цикле присвоить значение?


 
Efir   (2007-11-04 19:59) [6]

Конечно можно.


 
WFS   (2007-11-04 20:02) [7]

Ну а как?
Он же не понимает Edit[i].text :)


 
Efir   (2007-11-04 20:10) [8]

Можно так:

var
 i:integer;
 Edit:TComponent;
begin
 for i:=1 to 5 do begin
   Edit:=FindComponent("Edit"+IntToStr(i));
   if Edit is TEdit then
     TEdit(Edit).Text:="12345";
 end;
end;


 
WFS   (2007-11-04 20:14) [9]

Ладно, спасибо:)


 
Галинка ©   (2007-11-04 21:51) [10]

WFS   (04.11.07 20:02) [7]

а в чем проблема? если параллельно будет существовать массив этих вновь созданных едитов, то можно и так.

var
MyEdits: array of TEdit;
i : integer;
curEdit : TEdit;

begin
 for i:=0 to 1000 do
  begin
   curEdit := TEdit.Create(Form1);
   SetLength(MyEdits, i+1);
   MyEdits[i] := TEdit.Create(Form1);
     with MyEdits[i] do
       begin
         Parent := Form1;
         Left = 10;
         Top := 10 + 25*i;
         Text = IntToStr(i);
       end;
  end;
end;


 
Amoeba ©   (2007-11-05 02:10) [11]

Лучше использовать не массив, а TObjectList.


 
Anatoly Podgoretsky ©   (2007-11-05 08:53) [12]

Лучше использовать Controls или Components, ни к чему плодить сущности.


 
Галинка ©   (2007-11-06 12:39) [13]

Да понятно, что лучше. Но можно. Если автор пока категориями массивов оперирует.

И вообще, когда надо большое количество однозначных эдитов, может сразу StringGrid взять, и не мучиться?


 
Ega23 ©   (2007-11-06 13:00) [14]


> Лучше использовать Controls или Components, ни к чему плодить
> сущности.


Кроме динамически создаваемых Эдитов могут быть и созданные в Design-time на данном контроле.
А Tag всего один...  :)


 
Leonid Troyanovsky ©   (2007-11-06 13:24) [15]


> Галинка ©   (06.11.07 12:39) [13]

> И вообще, когда надо большое количество однозначных эдитов,
> может сразу StringGrid взять

Сразу DrawGrid.

--
Regards, LVT.



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

Форум: "Начинающим";
Текущий архив: 2007.12.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.041 c
3-1184772562
olevacho_
2007-07-18 19:29
2007.12.02
защта базы.


11-1178992162
Dmitriy___
2007-05-12 21:49
2007.12.02
Collapse и SetItemState


15-1193901454
Игорь Шевченко
2007-11-01 10:17
2007.12.02
Кстати, о расчетах по кредитным картам :)


15-1193483009
VovaK
2007-10-27 15:03
2007.12.02
Кнопка со стрелкой вниз.


4-1179517041
YARA
2007-05-18 23:37
2007.12.02
Рабочий стол





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский