Форум: "Основная";
Текущий архив: 2003.09.01;
Скачать: [xml.tar.bz2];
ВнизКак различить DesignTime и RunTime Найти похожие ветки
← →
don-do (2003-08-19 09:03) [0]При инициализации меняю PopupList, если это в пакете то дельфи падает. Помогите плиз, есть ли директивы для различения режимов.
← →
Palladin (2003-08-19 09:13) [1]когда рисуешь - design time
когда нажимаешь зеленый треугольничек это run-time и длится он до нажатия тобой крестика в твоей программе...
← →
don-do (2003-08-19 09:17) [2]Palladin шутник
У комонента есть свойство State, а мне бы хотелость различать (програмно - для Palladinа) в IDE работает код или нет.
← →
Camus (2003-08-19 09:18) [3]Для любого компонента:
if csDesigning in ComponentState then ... // Это design-time
← →
jel (2003-08-19 09:19) [4]TComponent.ComponentState
← →
don-do (2003-08-19 09:21) [5]Спасибо за советы, но это ни коим боком не касается компонентов.
Есть ли другой способ?
← →
don-do (2003-08-19 09:26) [6]пока я использую:
{$IFNDEF DESIGNIBXFORMS} //Defined in .DPK
If Assigned(PopupList)
then PopupList.Free;
PopupList := TMyPopupList.Create;
{$ENDIF}
,но это меня не устраивает, т.к. придется пакеты отравлять с прогой, а для этого их надо пересобирать.
← →
Camus (2003-08-19 09:34) [7]> don-do (19.08.03 09:21) [5]
1. Если есть ссылка на любой компонет, то можно проверить по нему (причем формы и модули данных - тоже компоненты). Это самое надежное.
2. В design-time Application - это Delphi. Можно проверить имя класса главной формы, но это менее надежно (когда-нибудь может измениться):
if CompareText(Application.MainForm.ClassName, "TAppBuilder")...
← →
Zhenka (2003-08-19 09:58) [8]может это не то, но что то типа етого
{$RUNONLY ON}
ПРИ ВКЛ ДИРЕКТИВЕ ПАКЕТ КОМПИЛИТСЯ КАК ПАКЕТ РАНТАЙМ
используется только в дпк файлах.
← →
don-do (2003-08-19 10:05) [9]Camus спасибо, наверное это лучшее решение.
← →
don-do (2003-08-19 10:21) [10]initialization
if not Assigned(Application.MainForm)
then begin
If Assigned(PopupList)
then PopupList.Free;
PopupList := TMyPopupList.Create;
end;
спасибо всем, я поступил так, т.е. во время инициализации модулей главная форма еще не установлена.Ну а с RunTime пакетами вариант Camus подходит больше.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.09.01;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c