Главная страница
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.053 c
2-1151566950
KaLLeKa
2006-06-29 11:42
2006.07.16
Как разместить компонент внутри другого компонента?


15-1150564169
TUser
2006-06-17 21:09
2006.07.16
Это сделали взрослые


15-1150138873
JUS
2006-06-12 23:01
2006.07.16
Размещение игы в инете и её продажа


2-1151326222
bulavkin
2006-06-26 16:50
2006.07.16
DelphX --- Manual


4-1144308799
Temniy
2006-04-06 11:33
2006.07.16
Многооконные приложения