<메뉴를 선택하지 않고 단축키를 사용하여 메뉴기능을 시행하기>
단축키와는 다른이름이다.
단축키 : 메뉴이름에& 를 넣어 Alt키와 함께 사용하는 키를 단축키라고 한다. 반드시 Alt키와 함께 사용해야하며 메뉴에있는 항목을 키보드로 선택하는 빠른 방법이지만 엑셀레이터는 메뉴와 상관없이 언제든 사용할 수있다.
단축키 / 엑셀레이터 만들기
- 메뉴편집기에서 File팝업 메뉴의 속성 윈도우에서 caption을 &를 붙여서 &file로 바꾼다.
- .File 아래의 항목 3가지있는데 각 항목의 캡션을 다 수정한다.
수정전 수정후 Menu1 Menu&1\tCtrl+A Menu2 Menu&2\tCtrl+B Exit &Exit\tCtrl+C
이렇게 바꾸면 Alt + F를 누르면 파일 메뉴가 보여지고 각각 1, 2, E가 단축키로 지정되어있다. 그 기능을 수행한다.
4. 그러나 뒤에 띄고 Ctral + A 가 엑셀레이터를 지정한건데 현재 상태로는 화면에 보여지기만 하고, 실제 구동은 되지 않는다. 구동이 되게 하기 위해서는 별도의 리소스를 작성해야한다.
5. 리소스추가 - 엑셀레이터 편집기 -
다음과 같이 추가한다. 아이디에는 메뉴에서 만든 아이디를 그대로 사용한다.
6.
LoadAccelaterator함수를 추가 하고,
TranslateAccelator 함수도 추가한다. (이 함수는 엑셀레이터가 입력되었을 경우 키보드 메시지를 WM_COMMAND 메시지로 변경하여 엑셀레이터가 동작할 수 있도록 만든다.)
->엑셀레이턱다 입력 되었을 경우 TranslateMessage, DispatchMessage 가 실행되지 못하게 막아버린다.
'WinAPI' 카테고리의 다른 글
[WinAPI]MDI(Multiple Document INterface) (0) | 2022.01.03 |
---|---|
[WinAPI]메타파일 (0) | 2022.01.03 |
[WINAPI]컨트롤3(콤보박스, 스크롤, 스태틱) (0) | 2021.12.30 |
[WINAPI]컨트롤2(라디오 버튼, 에디트, 리스트박스) (0) | 2021.12.30 |
[WINAPI]컨트롤1(버튼, 체크박스) (0) | 2021.12.30 |