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

Вниз

Ещё раз про фреймы   Найти похожие ветки 

 
Ega23 ©   (2006-06-30 09:50) [0]

Требуется у фрейма реализовать аналог TForm.OnCreate, OnDestroy и OnActivate и что-то типа OnDeactivate
Пока что из всех мыслев есть только переопределить у моего фрейма AfterConstruction, BeforeDestruction и SetParent.
Другие варианты есть?


 
Vlad ©   (2006-06-30 10:32) [1]

Переопределяешь конструктор с деструктором в своем фрейме,
делаешь published property OnCreate, OnDestroy типа TNotifyEvent, и вызываешь их оттуда


 
Desdechado ©   (2006-06-30 10:39) [2]

А как ты себе представляешь OnActivate и OnDeactivate у фрейма, который может быть кусочком формы? Как получение и потерю фокуса контролами фрейма?


 
Ega23 ©   (2006-06-30 10:54) [3]


> А как ты себе представляешь OnActivate и OnDeactivate у
> фрейма, который может быть кусочком формы? Как получение
> и потерю фокуса контролами фрейма?
>


Когда я ему Parent назначаю.
В общем, у меня есть десяток разных фреймов, в один момент времени показывается только один. Вот мне и нужно отследить, фактически какой фрейм сейчас активный. Плюс на момент активации фрейма он должен выполнить некоторые действия.
Я предпологал процедуру SetParent для этих целей переопределить.


 
Ega23 ©   (2006-06-30 10:56) [4]


> Переопределяешь конструктор с деструктором в своем фрейме,
>
> делаешь published property OnCreate, OnDestroy типа TNotifyEvent,
>  и вызываешь их оттуда
>


Логично. Тогда уж просто Constructor переопределить c деструктором...


 
Vlad ©   (2006-06-30 11:32) [5]


> Ega23 ©   (30.06.06 10:54) [3]


> Вот мне и нужно отследить, фактически какой фрейм сейчас
> активный.

Дык есть же свойство showing у фрейма..


 
Ega23 ©   (2006-06-30 11:40) [6]


> Дык есть же свойство showing у фрейма..


Мне событие надо.
Ну ладно, это я уже сделал, спаибо.


 
Vlad ©   (2006-06-30 12:03) [7]


> Ega23 ©   (30.06.06 11:40) [6]
>
> > Дык есть же свойство showing у фрейма..
>
>
> Мне событие надо.


у фрейма:
....
 private
   procedure CMShowingChanged(var Message: TMessage); message CM_SHOWINGCHANGED;

..........

procedure TFrame1.CMShowingChanged(var Message: TMessage);
begin
 inherited;
.... // тут делаешь чего хочешь :-)
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.051 c
2-1151343761
NORDmen
2006-06-26 21:42
2006.07.16
Обработка данных посланных серверу методом POST


3-1147620877
nopox
2006-05-14 19:34
2006.07.16
Error creating cursor handle-Уважаемые, подскажите,


9-1131908625
Conferno
2005-11-13 22:03
2006.07.16
GLScene - GLPortal и GLFreeForm


2-1151290523
learner
2006-06-26 06:55
2006.07.16
Передача функции класса как параметра в др. функцию


2-1151651681
FFFF
2006-06-30 11:14
2006.07.16
Как открыть документ Word