수고하시네요.
WindowProc를 이용한 컴포넌트 후킹 방식으로
panel1 에 발생하는 메세지를 후킹해서 사용하고 있습니다.
그런데 panel 2개를 폼에 올리고
2개의 패널에 대해서 각각 후킹 할수 있는 방법은 없나요?
2개의 패널에 대해서 각각 후킹할 수 있는 방법이 있으면 알려주세요.
감사합니다.
procedure TForm1.FormCreate(Sender: TObject);
begin
WndMethod := Panel1.WindowProc;
Panel1.WindowProc := HandleMessage;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
Panel1.WindowProc := WndMethod;
end;
procedure TForm1.HandleMessage(var msg : TMessage);
begin
case msg.Msg of
WM_KEYDOWN:
begin
showmessage('panel1 keydown');
end;
end;
end;
WndMethod1 := Panel1.WindowProc;
Panel1.WindowProc := HandleMessage1;
WndMethod2 := Panel2.WindowProc;
Panel2.WindowProc := HandleMessage2;
이럼 되지 않나요??