안녕하세요
test가 시간이 흐르면 계속 바뀌는 값입니다.
제가 하구 싶은건 f11을 누르면 시작 f12를 누르면 중지...
그런데 f11눌러서 시작은 되는데 f12 누르면 중지하구 싶은데 어떻게 해야 되는지 모르겠네요..ㅜㅜ
RegisterHotKey 여기에 동시에 2개 값은 입력이 안되는건지..
어떻게 사용하는건지 잘 모르겠네요...아시는분 답변좀 부탁드립니다..
좋은 하루되세요..^^
procedure WMHotKey(var Message: TWMHotKey); message WM_HotKey;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
edit1.text := inttostr(test);
end;
procedure TForm1.WMHotKey(var Message: TWMHotKey);
begin
Timer1.Enabled := True;
end;
procedure TForm1.FormActivate(Sender: TObject);
begin
Timer1.Enabled := false;
RegisterHotKey(Self.Handle, GlobalAddAtom('SampleHotKeyForm'), 0, VK_F11);
// RegisterHotKey(Self.Handle, GlobalAddAtom('SampleHotKeyForm'), 0, VK_F12);
end;
같은 아톰을 사용하시면 안되고 각각 다른 아톰을 사용하세요... 이 아톰값이 각각의 핫키를 구별하게 해줄 수 있는 열쇠입니다.
RegisterHotKey(Self.Handle, GlobalAddAtom('SampleHotKeyFormF11'), 0, VK_F11);
RegisterHotKey(Self.Handle, GlobalAddAtom('SampleHotKeyFormF12'), 0, VK_F12);
그리고 WM_HOTKEY메세지를 처리하실때 이 아톰들로 구별해서 코딩하세요...
2개 이상의 핫키를 사용할려면 아톰값을 저장하시는 것이 더 좋을듯...
procedure TForm1.WMHotKey(var Message: TWMHotKey);
begin
if Message.HotKey = GlobalFindAtom('SampleHotKeyFormF11') then
begin
// F11눌렀을때의 처리
Timer1.Enabled := True;
end
else if Message.HotKey = GlobalFindAtom('SampleHotKeyFormF12') then
begin
// F12눌렀을때의 처리
Timer1.Enabled := False;
end;
end;
^^ 항상 즐코하세요...