Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать создан ли класс?


demon ©   (2008-12-31 14:05:00) 

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

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

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


Leonid Troyanovsky   (2009-01-02 10:29:00) [1]


> demon ©   (31.12.08 14:05)  

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

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

--
Regards, LVT.


Leonid Troyanovsky   (2009-01-02 10:23:00) [2]


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

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

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

--
Regards, LVT.


Leonid Troyanovsky   (2009-01-02 10:16:00) [3]


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

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

Глобальная.

--
Regards, LVT.


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


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


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


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

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

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


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


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

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


MsGuns   (2008-12-31 23:11:00) [7]

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


demon   (2008-12-31 14:13:00) [8]

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


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

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

FreeAndNil(BassPlayer1);

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

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо