Главная страница
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.014 c
15-1229603470
XentaAbsenta
2008-12-18 15:31
2009.02.15
Задача с элементами последовательностей


15-1229514723
DeeNamid
2008-12-17 14:52
2009.02.15
Антивирус определяет программу как троян


15-1229711962
@!!ex
2008-12-19 21:39
2009.02.15
Туплю... помогите...


2-1230721519
demon
2008-12-31 14:05
2009.02.15
Как узнать создан ли класс?


2-1209619132
FoxikM
2008-05-01 09:18
2009.02.15
Как копировать файлы с "неправильным" именем