Главная страница
    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.046 c
2-1194000155
Ega23
2007-11-02 13:42
2007.12.02
как такой AV ловить?


6-1175429195
wolchonok29
2007-04-01 16:06
2007.12.02
Загрузка из потока


2-1194352765
dumka
2007-11-06 15:39
2007.12.02
Подпись


2-1194439191
F@T@L_Err0r
2007-11-07 15:39
2007.12.02
POverlapped


15-1193483482
Alkid
2007-10-27 15:11
2007.12.02
Plz. Help : DSL-200 + WinXP 64 + AMD 64





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский