{$R *.dfm}
function KeyboardHook(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LResult;
begin
if nCode > -1 then begin
if ( (wParam = VK_UP) or (wParam = VK_DOWN) )
and(Form1.SpinEdit1.Focused) then
Result := 1
else Result := 0;
end
else Result := CallNextHookEx(KeyHook, nCode, wParam, lParam);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
UnHookWindowsHookEx(KeyHook);
end;
.....
.....
그리고 아래 공백인식 어떻게 안되는지요
디버깅 모드시엔 에러메세지가 나타나고 실행파일로 실행신 try처리 되므로 메세지는 안나오는데요...소스 일부라도 다시 올려보세요
아래처럼 키보드후킹을 응용해보세요
.....
.....
var
Form1: TForm1;
KeyHook: HHOOK;
function KeyboardHook(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LResult; stdcall;
implementation
{$R *.dfm}
function KeyboardHook(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LResult;
begin
if nCode > -1 then begin
if ( (wParam = VK_UP) or (wParam = VK_DOWN) )
and(Form1.SpinEdit1.Focused) then
Result := 1
else Result := 0;
end
else Result := CallNextHookEx(KeyHook, nCode, wParam, lParam);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
KeyHook := SetWindowsHookEx(WH_KEYBOARD, @KeyboardHook, 0, GetCurrentThreadID);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
UnHookWindowsHookEx(KeyHook);
end;
.....
.....
그리고 아래 공백인식 어떻게 안되는지요
디버깅 모드시엔 에러메세지가 나타나고 실행파일로 실행신 try처리 되므로 메세지는 안나오는데요...소스 일부라도 다시 올려보세요