마음의 안정을 찾기 위하여 - Delphi Hotkey 컴퍼넌트 사용 예
2279583
3
1336
관리자새글쓰기
태그위치로그방명록
별일없다의 생각
dawnsea's me2day/2010
색상(RGB)코드 추출기(Color...
Connection Generator/2010
최승호PD, '4대강 거짓말 검...
Green Monkey**/2010
Syng의 생각
syng's me2DAY/2010
천재 작곡가 윤일상이 기획,...
엘븐킹's Digital Factory/2010
Delphi Hotkey 컴퍼넌트 사용 예
Delphi/Etc Tip | 2007/06/13 11:31

스크린펜을 만들면서 핫키를 변경할 수 있도록 요청하는 분들이 좀 계셔서 바꾸는데,
쪽지 프로그램의 키보드형태 핫키를 사용할까 하다가, 괜하 닭잡는데 소잡는 칼 사용하는것 같아서 -,.-; 방향을 급선회 가볍게 가기로 했다.

아래는 사용 방법!

Delphi IDE의 Win32탭에 있는 THotkey 컴퍼넌트의 Hotkey Property를 사용하는 방법.

아래 함수는 델파이 menu.pas 파일에 포함되어 있으나, 별도의 유닛을 만들기 위하여,
따로이 분리하였음. 실제 사용시는 함수명을 변경하여 사용하여야 함.

procedure ShortCutToKey(ShortCut: TShortCut; var Key: Word; var Shift: TShiftState);
begin
   Key := ShortCut and not (scShift + scCtrl + scAlt);
   Shift := [];
   if ShortCut and scShift <> 0 then Include(Shift, ssShift);
   if ShortCut and scCtrl <> 0 then Include(Shift, ssCtrl);
   if ShortCut and scAlt <> 0 then Include(Shift, ssAlt);
end;

procedure ShortCutToHotKey(HotKey: TShortCut; var Key : Word; var Modifiers: Uint);
var
   Shift: TShiftState;
begin
   ShortCutToKey(HotKey, Key, Shift);
   Modifiers := 0;
   if (ssShift in Shift) then
   Modifiers := Modifiers or MOD_SHIFT;
   if (ssAlt in Shift) then
   Modifiers := Modifiers or MOD_ALT;
   if (ssCtrl in Shift) then
   Modifiers := Modifiers or MOD_CONTROL;
end;



실제 사용예]
procedure TForm1.Button1Click(Sender: TObject);
var
  Key : Word;
  Modifiers: UINT;
begin
  ShortCutToHotKey(HotKey1.HotKey, Key, Modifiers);
  RegisterHotKey(Handle, 1, Modifiers, Key);
end;

2007/06/13 11:31 2007/06/13 11:31
Article tag list Go to top
View Comment 1
Trackback URL :: 이 글에는 트랙백을 보낼 수 없습니다
From. 강진 2010/03/02 17:00
답글달기삭제
과장님 잘 보고 갑니다 ㅎㅎ
PREV : [1] : NEXT
 
 
 
 
: [1] ... [770][771][772][773][774][775][776][777][778] ... [1317] :
«   2024/04   »
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        
전체 (1317)
출판 준비 (0)
My-Pro... (41)
사는 ... (933)
블로그... (22)
My Lib... (32)
게임 ... (23)
개발관... (3)
Smart ... (1)
Delphi (93)
C Builder (0)
Object... (0)
VC, MF... (10)
Window... (1)
Open API (3)
Visual... (0)
Java, JSP (2)
ASP.NET (0)
PHP (5)
Database (12)
리눅스 (29)
Windows (25)
Device... (1)
Embedded (1)
게임 ... (0)
Web Se... (2)
Web, S... (21)
잡다한... (6)
프로젝트 (0)
Personal (0)
대통령... (13)
Link (2)