다음을 통해 공유


IShellView::UIActivate 메서드(shobjidl_core.h)

뷰 창의 활성화 상태가 셸 보기 자체에 의해 발생하지 않는 이벤트에 의해 변경되면 호출됩니다. 예를 들어 트리에 포커스가 있을 때 TAB 키를 누르면 보기에 포커스가 지정되어야 합니다.

구문

HRESULT UIActivate(
  UINT uState
);

매개 변수

uState

형식: UINT

창의 활성화 상태를 지정하는 플래그입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.

SVUIA_ACTIVATE_FOCUS

Windows Explorer 방금 입력 포커스가 있는 보기 창을 만들었습니다. 즉, 셸 보기는 포커스가 있는 상태에 적합한 메뉴 항목을 설정할 수 있어야 합니다.

SVUIA_ACTIVATE_NOFOCUS

셸 보기에서 입력 포커스가 손실되거나 입력 포커스 없이 방금 생성되었습니다. 셸 보기는 포커스가 없는 상태에 적합한 메뉴 항목을 설정할 수 있어야 합니다. 즉, 선택 항목만 추가하면 안 됩니다.

SVUIA_DEACTIVATE

Windows Explorer 셸 보기 창을 삭제하려고 합니다. 셸 보기는 모든 확장된 사용자 인터페이스를 제거해야 합니다. 일반적으로 병합된 메뉴와 병합된 모덜리스 팝업 창입니다.

SVUIA_INPLACEACTIVATE

셸 보기는 포커스 없이 활성화됩니다. 이 플래그는 IShellView2 인터페이스를 통해 UIActivate가 노출될 때만 사용됩니다.

반환 값

형식: HRESULT

성공하면 S_OK 반환하고, 그렇지 않으면 COM 정의 오류 값을 반환합니다.

설명

메뉴 항목을 다시 병합하기 전에 셸 보기는 일반적으로 WM_SETFOCUS 메시지를 후크하고 OnViewWindowActive 메서드를 호출합니다. 셸 보기는 NM_KILLFOCUS 메시지를 후크하여 메뉴 항목을 다시 병합해서는 안 됩니다.

호출 애플리케이션에 대한 참고 사항

활성화 상태 변경에 대한 보기를 알리려면 이 메서드를 호출합니다.

구현자에 대한 참고 사항

활성화 상태를 추적하고 동작을 적절하게 변경하려면 이 메서드를 사용합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 shobjidl_core.h(Shobjidl.h 포함)
DLL Shell32.dll(버전 4.0 이상)

추가 정보

IShellView