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

Вниз

Проблемы с событием Activate   Найти похожие ветки 

 
Крутыш ©   (2004-01-21 18:12) [0]

Добрый вечер дельфисты-программисты!!!
Вызываю модальную форму из другого окна.
Когда модальную форму закрываю, событие Activate формы откуда
была вызвана модальная форма не происходит.
Почему???


 
YuRock ©   (2004-01-21 18:20) [1]

Это известный глюк VCL - для главной формы OnActivate не работает...

Обход: перекройте метод WndProc класса "формы откуда
была вызвана модальная форма" и там ловите сообщение WM_ACTIVATE


 
Крутыш ©   (2004-01-21 18:56) [2]

Братан поясни пожалуйста код.
Я чо то не въехал в слова типа перекройте.
Объясни пожалуйста новичку, если тебе не внапряг конечно.
Заранее очень благодарен.


 
YuRock ©   (2004-01-21 19:13) [3]


unit Unit1;

interface

uses
Windows, Classes, Controls, StdCtrls, Forms, Messages;

type

TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
protected
procedure WndProc(var Msg: TMessage); override;
end;

var
Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.WndProc(var Msg: TMessage);
begin
inherited;

if Msg.Msg = WM_ACTIVATE then begin
if Msg.WParamLo = WA_ACTIVE then Caption := "Окно активно"
else Caption := "Окно не активно";
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.ShowModal;
end;

end.


Надеюсь понятно, что это текст модуля, с которым должна идти Unit1.dfm.
Так же должна быть форма Form2 (причем autocreate)



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

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

Наверх




Память: 0.47 MB
Время: 0.024 c
3-2009
FilSM
2004-01-07 10:25
2004.02.02
ADO, MSSQL и права локального администратора


1-2160
Dysan
2004-01-21 15:08
2004.02.02
regsvr32 и class ?


4-2431
User_OKA
2003-11-24 10:25
2004.02.02
Реестр


6-2245
nnn
2003-11-27 11:40
2004.02.02
Испоьзование Com-объектов в Web-приложениях


3-1967
Романов Р.В.
2004-01-09 12:01
2004.02.02
Выбор структуры БД