Главная страница
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.019 c
1-27530
Tolik
2003-09-30 01:36
2003.10.09
Вопрос по ListBox у


14-27732
Biryk
2003-09-12 03:20
2003.10.09
То что есть в вирусах но ножно для мирных целей...


14-27665
MBo
2003-09-22 17:03
2003.10.09
Отчет о MS Developers Day в Новосибирске


3-27348
AlexPul
2003-09-19 17:21
2003.10.09
Упаковка таблиц Interbase


14-27657
Daniel
2003-09-22 19:04
2003.10.09
Я что-то не пропустил, Этап 6 уже был?