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

Вниз

Хук не работает, подскажите в чем дело ...   Найти похожие ветки 

 
TBase_Tree   (2008-06-05 14:40) [0]

unit uLogin;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls, Buttons;

type
 TfrmLogin = class(TForm)
   Panel1: TPanel;
   GroupBox1: TGroupBox;
   Memo1: TMemo;
   GroupBox2: TGroupBox;
   Label1: TLabel;
   Label2: TLabel;
   edPassword: TEdit;
   edLogin: TEdit;
   Button1: TButton;
   Button2: TButton;
   SpeedButton1: TSpeedButton;
   procedure Hook(var Mes:TMessage); message WM_INPUTLANGCHANGEREQUEST;
 private
    //
 public

 end;

var
   frmLogin: TfrmLogin;

implementation

{$R *.dfm}

// Не срабатывает этот Хук, подскажите пожалуйста в чем дело ??? :(

procedure TfrmLogin.Hook(var Mes: TMessage);
begin
 ShowMessage("Hook");
end;

end.


 
Игорь Шевченко ©   (2008-06-05 14:45) [1]

Сообщение форме не приходит, поэтому и не работает. А вот через Application.OnMessage вполне его можно поймать


 
Palladin ©   (2008-06-05 14:46) [2]

Видимо потому что этот "хук" посылается главному окну приложения, а не какой либо форме конкретно.


 
TBase_Tree   (2008-06-05 14:53) [3]


> Видимо потому что этот "хук" посылается главному окну приложения,
>  а не какой либо форме конкретно.


Точно. Убрал все компоненты из формы, хук отработал. :( Что делать?

> Application.OnMessage

Где можно прочесть инфу или есть примеры? плз.


 
Palladin ©   (2008-06-05 14:55) [4]

TApplicationEvents + F1


 
Vlad Oshin ©   (2008-06-05 16:03) [5]

а можно по msg.message получить что-то типа "WM_..."


 
Vlad Oshin ©   (2008-06-05 16:03) [6]

Удалено модератором


 
Vlad Oshin ©   (2008-06-05 16:03) [7]

Удалено модератором


 
Игорь Шевченко ©   (2008-06-05 16:05) [8]


> а можно по msg.message получить что-то типа "WM_..."


Можно. Путем написания функции


 
TBase_Tree   (2008-06-06 08:27) [9]


> а можно по msg.message получить что-то типа "WM_..."


Я это сделал так:

procedure TfrmLogin.Hook(var Msg: TMsg; var Handled: Boolean);
begin
if Msg.Message = WM_INPUTLANGCHANGEREQUEST then
   ..................
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
15-1211363788
hungry_Duck
2008-05-21 13:56
2008.07.06
построение триангуляционной сетки по опорным точкам


15-1211668991
TIF
2008-05-25 02:43
2008.07.06
Photoshop... Как сделать закруглённые углы?


2-1212682369
leonidus
2008-06-05 20:12
2008.07.06
Работа с файлом формата UTF8


2-1212944213
Alexey
2008-06-08 20:56
2008.07.06
Запись из StringGrid в *.dbf


15-1211314606
NewZ
2008-05-21 00:16
2008.07.06
Разработка сайта.