Главная страница
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.447 c
10-1122030328
Weberd
2005-07-22 15:05
2006.07.16
Как создать ActiveX враппер под свой компнонент


3-1147842962
syte_ser78
2006-05-17 09:16
2006.07.16
Помогите с востановлением базы


2-1151237529
Mr tray
2006-06-25 16:12
2006.07.16
string [8] заполняется только четырьмя символами


2-1151495331
mfender
2006-06-28 15:48
2006.07.16
TTreeNode


2-1151412468
Neket
2006-06-27 16:47
2006.07.16
И вновь DBGrid