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

Вниз

Как создавать объект при инитиализации только в run-time   Найти похожие ветки 

 
aly   (2006-08-02 11:29) [0]

Есть bpl, в которой при инитиализации создается объект. Нужно, чтобы этот объект создавался только в run-time.


 
Сергей М. ©   (2006-08-02 11:38) [1]

Что в дан.случае подразумевается под "инициализацией" ?


 
Reindeer Moss Eater ©   (2006-08-02 11:47) [2]

Создай еще один класс. в инициализации бпл создавай его экземпляр.
в конструкторе смотри стэйт. если в нем нет csDesigning, то смело создавай свой компонент.


 
Юрий Зотов ©   (2006-08-02 12:14) [3]

> Reindeer Moss Eater ©   (02.08.06 11:47) [2]
Всегда получится run-time даже при загрузке в IDE.

> aly
Косвенный, но достаточно достоверный способ:
if Application.MainForm.ClassName <> "TAppBuilder" then это_runtime;


 
Сергей М. ©   (2006-08-02 12:32) [4]


> aly


При инициализации bpl следует определить, в чье адресное пространство она в тек.момент загружена.
Если в АП Делфи-процесса, то это design-time, иначе - ран-тайм.


 
Юрий Зотов ©   (2006-08-02 12:50) [5]

Более надежная по сравнению с [3] модификация:

if AnsiSameText(GetEnvironmentVariable("DELPHI") + "\Bin\Delphi32.exe", Application.ExeName) then
 ShowMessage("design-time")
else
 ShowMessage("run-time");



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

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

Наверх




Память: 0.47 MB
Время: 0.039 c
2-1154374453
rem2
2006-07-31 23:34
2006.08.20
Как остановить выполнение процедуры/функции?


15-1153740447
ZeroDivide
2006-07-24 15:27
2006.08.20
Что вас заставляет метать бисер?


2-1154444286
Klever
2006-08-01 18:58
2006.08.20
сортировку Dbgrid столбцов


1-1151967710
MNC
2006-07-04 03:01
2006.08.20
фокус на первый символ в РичЕдит


2-1154588840
Neket
2006-08-03 11:07
2006.08.20
UDP