Вниз
Скачать: CL | DM;

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

 
lovres ©   (2002-08-20 16:10) [0]

Создаю:
type
TControlClass = class of TControl;
var
SpeedFill: TSpeedFill;
...
function CreateControl(ControlClass: TControlClass;
const ControlName: string; X, Y, W, H: Integer): TControl;
begin
Result := ControlClass.Create(SpeedFill);
with Result do
begin
Parent := SpeedFill;
Name := ControlName;
SetBounds(X, Y, W, H);
Visible := True;
end;
end;
...
CreateControl(TEdit, "Edit"+inttostr((i-1)*10+j),j*50, 158+i*30, 35, 20)
как видно имя тоже динамическое, так вот меня, как новичка в Delphi, интересует как потом получить доступ к свойствам и методам этого объекта, например надо вывести какой-то свой начальный текст в Edit?
У статического:Edit1.text:="ля-ля-ля";
А у динамического как?


 
MBo ©   (2002-08-20 16:13) [1]

ну ведь функция возвращает ссылку на созданный контрол, ее и используй (с IS и AS)
также см. FindComponent, Components[i] и Controls[i]


 
lenin ©   (2002-08-20 16:13) [2]

(FindComponent(ControlName) as ControlClass).---


 
Денис М Радченко   (2002-08-20 16:59) [3]

Можешь завести масив myEdits : array of TEdit и изменять текст
myEdits[1].Text := IntToStr(Random(100));


 
lovres ©   (2002-08-20 18:36) [4]

Всем спасибо за советы! Помогло



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
1-3482
Lamer86
2002-08-20 21:27
2002.09.02
Раздел HKEY_LOCAL_MACHINE в реестре


3-3235
AFrolov
2002-08-10 19:50
2002.09.02
как при выполнении SQL запроса можно создать дополнительные поля?


1-3522
Tornado
2002-08-21 16:50
2002.09.02
Уважаемые Мастера!


3-3316
Nameless
2002-08-13 11:08
2002.09.02
Можете поделиться опытом написания 3-х уровневых приложений?


3-3311
VZ-KZ
2002-08-12 15:31
2002.09.02
Сохранение базы в формате Excel




   Наверх