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

Вниз

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

 
demon ©   (2008-12-31 14:05) [0]

Есть класс:  TBASSPlayer = class(TComponent)
В моём модуле обьявлен:   BassPlayer1 : TBassPlayer;
Создаю его так:    BassPlayer1 := TBassPlayer.Create(myhandle);

Как узнать создан ли этот класс? Ну, чтобы не допустить повторного создания...

PS. Может неправильно что сказал, простите ламера...


 
Сергей М. ©   (2008-12-31 14:09) [1]

Уничтожай объект так:

FreeAndNil(BassPlayer1);

Тогда при условии, что BassPlayer1 есть статическая переменная, проверка на существование объекта сводится к проверке значения переменной на nil

if Assigned(BassPlayer1) then
.. существует
else
.. не существует


 
demon ©   (2008-12-31 14:13) [2]

Сергей М. Спасибо, то что нужно!


 
MsGuns ©   (2008-12-31 23:11) [3]

Класс создать нельзя ! Можно создать только его экземпляр ;)


 
Германн ©   (2009-01-01 04:34) [4]


> Тогда при условии, что BassPlayer1 есть статическая переменная,
>  проверка на существование объекта сводится к проверке значения
> переменной на nil
>

Хм. А что есть статическая переменная?


 
{RASkov} ©   (2009-01-01 12:20) [5]

> Хм. А что есть статическая переменная?

var Cl: TClass;
....
Cl:=TClass.Create();


 
Сергей М. ©   (2009-01-01 19:17) [6]


> что есть статическая переменная?


Это переменая, память под которую резеривируется на этапе сборки и загрузки исп.модуля приложения, время жизни которой равно времени жизни этого приложения.


 
Leonid Troyanovsky ©   (2009-01-02 10:16) [7]


> Германн ©   (01.01.09 04:34) [4]

> Хм. А что есть статическая переменная?

Глобальная.

--
Regards, LVT.


 
Leonid Troyanovsky ©   (2009-01-02 10:23) [8]


> Сергей М. ©   (31.12.08 14:09) [1]

> Уничтожай объект так:

А чего сразу уничтожать?
В плане было "не допустить повторного создания".

--
Regards, LVT.


 
Leonid Troyanovsky ©   (2009-01-02 10:29) [9]


> demon ©   (31.12.08 14:05)  

> Есть класс:  TBASSPlayer = class(TComponent)
> В моём модуле обьявлен:   BassPlayer1 : TBassPlayer;

Следить за судьбой компонента просто другому компоненту,
например, форме. Т.е., сделай BassPlayer1 полем другого компонента
и воспользуйся механизмом Notification, RTFM.

--
Regards, LVT.



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

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

Наверх




Память: 0.48 MB
Время: 0.008 c
2-1231250146
Семён
2009-01-06 16:55
2009.02.15
Как изменить содержимое 2-й строки ListView без Clear?


2-1230555975
...zZ
2008-12-29 16:06
2009.02.15
GetSystemMetrics


2-1231418330
bioss
2009-01-08 15:38
2009.02.15
Как перевести каретку в начало текстового файла?


15-1229781796
Кое кто
2008-12-20 17:03
2009.02.15
Игра Praetorians


2-1230629849
LabaN
2008-12-30 12:37
2009.02.15
Смайлы