[MFC] Ribbon Accelerator issue
1. 현상.
단축키를 리소스에서 Accelerator에서 아무리 입력해도 해당 단축키만 동작안함.
기존꺼는 다 잘되는데, 내가 추가한거만 안됨.
2. 구글링
MFC feature pack accelerator를 입력하는데 MFC feature pack accelerator issue가 생성됨. 그래서 확인해보니, MS에서 그렇게 설계했으니 아래 두가지 방법중에 하나로 해결하셈으로 결과가 나옴.
3. 해결방법
3.1. Regstry editor를 수정.
경로: HKEY_CURRENT_USER\Software\???\???\Workspace\Keyboard-0
-> 개발자 입장에선 유저보고 이걸 바꾸라고 하는게 가능할지 의문.
3.2 각어플의 큰아이콘 옆 아래방향 버튼을 눌러서 추가명령>키보드 바로가기:사용자지정-모두 다시 설정.
-> 이거 역시 개발자가 설치본에서 미리 해주지 않는한. 어려울듯.
3.3 프로그램 시작할때마다, CWinAppEx의 LoadCustomState를 오버라이드하고 키보드 메니져를 리셋
virtual void LoadCustomState() override
{
__super::LoadCustomState();
GetKeyboardManager()->ResetAll();
}
-> 이것도 역시 기존에 유저거 설정한게 사라진다는게 단점.
App을 찾아서 LoadCustomState()에 해당 소스를 넣고 컴파일하니, 단축키 잘 동작함.
Comments