키보드 포커스 및 활성화

키보드 포커스를 사용 하 여 창을 만든 전경 스레드 메시지 큐로 키보드 메시지를 게시 하는 시스템. 키보드 포커스 는 윈도우의 임시 속성입니다. 사용자의 방향에서 또 다른 하나의 창에서 키보드 포커스를 이동 하 여 디스플레이에 모든 창 중 키보드를 공유 하는 시스템. 키보드 포커스가 있는 창 (그것을 만든 스레드의 메시지 큐)에서 받은 모든 키보드 메시지를 다른 창에 포커스가 변경 될 때까지.

스레드 수 (해당 되는 경우)의 윈도우가 결정 GetFocus 함수를 호출 하는 현재 키보드 포커스를 가진. 스레드 SetFocus 함수를 호출 하 여 해당 창 중 하나에 키보드 포커스를 줄 수 있습니다. 키보드 포커스를 다른 하나의 창에서 변경 하는 경우 시스템 창에 포커스를 잃은 다음 WM_SETFOCUS 메시지 창이 포커스를 얻고 있다 보냅니다. WM_KILLFOCUS 메시지를 보냅니다.

키보드 포커스의 개념은 활성 창의 관련이 있습니다. 활성 창 에서 사용자가 현재 작업 하는 최상위 창입니다. 키보드 포커스가 있는 창에는 활성 창 또는 활성 창의 자식 창입니다. 사용자 활성 윈도우를 쉽게 식별할 수 있는, 그래서 시스템 Z 순서의 상단에 배치 하 고 (해당 되는 경우 그것이 한) 제목 표시줄 및 테두리 강조.

사용자를 클릭 하 여, 그것을 선택 하면 작업 목록에서 선택 하거나 alt + tab 또는 alt + esc 키 조합을 사용 하 여 최상위 창을 활성화할 수 있습니다. 스레드 SetActiveWindow 함수를 사용 하 여 최상위 창을 활성화할 수 있습니다. 그것은 GetActiveWindow 함수를 사용 하 여 만든 최상위 창이 활성화 되어 있는지 여부를 확인할 수 있습니다.

한 창이 비활성화 될 때 다른 활성화 시스템 WM_ACTIVATE 메시지를 보냅니다. WParam 매개 변수의 낮은 순서 단어 창이 되 고 비활성화 및 활성화 되는 경우 0이 아닌 경우 0입니다. 활성 창에 키보드 포커스를 설정 기본 창 프로시저를 WM_ACTIVATE 메시지를 받으면.

 

Index