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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.008 c
1-27534
elf
2003-09-30 01:20
2003.10.09
Как узнать создан объект или нет


3-27326
Vemer
2003-09-21 11:25
2003.10.09
(Не)Подстановка Default значений в IBase.


14-27659
Санек
2003-09-23 09:55
2003.10.09
Что будет правильнее?


1-27448
Micke_real
2003-09-27 21:56
2003.10.09
Иконки в TListBox


1-27439
JOY
2003-09-28 06:04
2003.10.09
1Кто-нибудь пробовал выравнивать по ширине?





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