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

Вниз

Как узнать создан объект или нет   Найти похожие ветки 

 
elf   (2003-09-30 01:20) [0]

var
a:tlabel;
begin
if ... then a:=tlabel.create(form1);
if a.создан=true (???) then ...


 
Тих   (2003-09-30 01:40) [1]

возникнет исключение.


 
Andy Bitoff   (2003-09-30 01:48) [2]

Если знаешь имя своего лабела то можно так;
var con:TControl;
.....
con:=Form1.FindChildControl("name_label");
if con <> nil then нашли
else не нашли

А если имени не знаешь, но надо найти первый лабел, то так;
var con:TControl;
i:integer;
.....
for i:=0 to Form1.ControlCount-1 do begin
con:=Form1.Controls[i];
if (con <> nil) and (con is TLabel) then Break;
end;
if con <> nil then нашли
else не нашли


 
Zacho ©   (2003-09-30 01:50) [3]


> Тих (30.09.03 01:40) [1]
> возникнет исключение.

Не обязательно.
2 elf :
В общем случае - никак. Ты должен сам об этом позаботиться. Например, инициализируй переменную-указатель на объект nil"ом, и присваивай ей nil после уничтожения объекта , используй для хранения указателей на объекты TList и т.п.
P.S. if a.создан=true (???) then ... тоже самое, что и просто if a.создан (???) then ...


 
Zacho ©   (2003-09-30 01:54) [4]


> Andy Bitoff (30.09.03 01:48) [2]

Посмотри на его код. Ну и как ты думаешь, какое имя будет у его Label"а ?

> con:=Form1.Controls[i];
> if (con <> nil)

Это условие всегда будет true.


 
Andy Bitoff   (2003-09-30 02:06) [5]

Прошу простить!!!! Я не внимательно прочитал вопрос. Посыпаю голову пеплом.


 
Andy Bitoff   (2003-09-30 02:09) [6]

>> con:=Form1.Controls[i];
>> if (con <> nil)
>Это условие всегда будет true.

Согласен. Поторопился.



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
1-27432
GigoVich
2003-09-28 14:22
2003.10.09
TWebBrowser - к вопросу автоматизации: не хочу из инета или фаила


14-27660
Омлет
2003-09-22 00:01
2003.10.09
Именинники 22 сентября !


1-27480
X-shadow
2003-09-26 23:00
2003.10.09
Для Cr@sh


3-27412
ZoKr
2003-09-18 05:30
2003.10.09
MaskEdit


1-27526
Kair
2003-09-25 08:16
2003.10.09
Изменения на диске