C & C++/MFC 컨트롤
Slider 포커스 이동 - 슬라이더
izen8
2011. 12. 16. 21:37
MFC에서 마우스휠이나 키보드 입력을 처리하다보면 꼭 생기는 문제가 slider control등이 그 키에 반응을 한다는 것이다.
예전에 키보드의 방향키에 의해서 silder control이 옮겨질 때는 pretranslate message에서 아예 return을 시키는 편법을 썼었는데 마우스 휠은 그렇게 하기 귀찮더라.
그래서 devpia를 뒤지던 중 고마우신 분이 아주 cool하게 4줄자리 소스를 써 주셨다.
HWND hWnd = ::GetFocus();
HWND NextWnd;
NextWnd = ::GetNextDlgTabItem(m_hWnd, hWnd, TRUE);
::SetFocus(NextWnd);
해당 Item의 바로 옆으로 포커스가 옮겨지게 된다.