截获与管理Windows的消息

阅读:235次   时间:2003-08-14 00:00:00   字体:[ ]


    有时候我们为了多项应用而要管理Windows的消息。我们怎样才能做到呢?

{ 这个例子定义的程序可以收取所有发往主窗口的消息 }

Unit TesteandoEsta;

Interface

Uses
    SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, Menus;

Type
   TForm1 = Class (TForm)
   Private {Private declarations}
   Public {Public declarations}
      Procedure WinMsg (Var Msg : TMsg; Var Handled : Boolean);

End;

Var
   Form1 : TForm1;

Implementation

{$R *.DFM}

{ 所有发送到主窗体的消息,保存在变量Msg中。 }

Procedure TForm1.WinMsg (Var Msg : TMsg; Var Handled : Boolean);

Begin
     If Msg.Message = WM_SYSCOMMAND Then Beep;
     { 接收到消息时的通知}

End;

Procedure TForm1.FormCreate (Sender : TObject);

Begin
     Application.OnMessage := WinMsg;
    { 替换消息句炳}

End;
关于本站 - 广告服务 - 会员指南 - 联系方法
Copyright ©2003-2011 源码天空 All Rights Reserved