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

Вниз

Проверка объкта   Найти похожие ветки 

 
^Sanya ©   (2002-10-27 15:39) [0]

Забыл, как проверялось, создан объект класса - или нет... аж стыдно:)
Напомните, плиз:)


 
Blacker77 ©   (2002-10-27 16:17) [1]

На примере TEdit:


if TEdit<>nil then
showmessage("Существует");


 
down   (2002-10-27 16:30) [2]

if Assigned(Edit) then showmessage("Возможно, существует");


 
^Sanya ©   (2002-10-27 16:55) [3]


> down (27.10.02 16:30)
> if Assigned(Edit) then showmessage("Возможно, существует");

ВО! его-то я и хотел.
Спасибо.


 
Юрий Зотов ©   (2002-10-27 17:22) [4]

> Blacker77 © (27.10.02 16:17)

Это не проверка. Если класс TEDit в данной точке не известен, то будет ошибка на этапе компиляции. А если известен, то он никогда не будет равен nil.

> ^Sanya

Обратите внимание на "возможно". Проверка переменной на nil сама по себе еще не дает 100%-ную гарантию. Например:

Edit := TEdit.Create(...);
...
Edit.Free;
...
if Assigned(Edit) then Edit.Text := ""; // Получаем ошибку.

Edit.Free уничтожает объект, но не меняет ссылку Edit, поэтому проверка не срабатывает. А вот при FreeAndNil(Edit) (или при ручной очистке ссылки) все было бы ОК.



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
7-21840
Terrible
2002-09-04 15:19
2002.11.07
Проверяем наличие администраторских привилегий.


8-21692
kuzmich
2002-07-16 12:45
2002.11.07
DelfiX for Delfi 6


1-21620
AM
2002-10-24 19:08
2002.11.07
Как повесить обработчик на все события формы?


3-21400
Призрак
2002-10-17 19:31
2002.11.07
Тормоза при перебросе данных из Access в InterBase.


14-21786
Rouse_
2002-10-17 21:26
2002.11.07
ВСТРЕЧА В МОСКВЕ