共用方式為


IShellView::UIActivate 方法 (shobjidl_core.h)

當檢視視窗的啟用狀態由Shell檢視本身所造成的事件變更時呼叫。 例如,如果當樹狀結構具有焦點時按下 TAB 鍵,則檢視應提供焦點。

語法

HRESULT UIActivate(
  UINT uState
);

參數

uState

類型: UINT

指定視窗啟用狀態的旗標。 此參數可以是下列其中一個值。

SVUIA_ACTIVATE_FOCUS

Windows 檔案總管剛建立具有輸入焦點的檢視視窗。 這表示殼層檢視應該能夠設定適合焦點狀態的功能表項。

SVUIA_ACTIVATE_NOFOCUS

Shell 檢視遺失輸入焦點,或剛建立而沒有輸入焦點。 Shell 檢視應該能夠設定適合非焦點狀態的功能表項。 這表示不應該新增任何選取特定專案。

SVUIA_DEACTIVATE

Windows 檔案總管即將終結殼層檢視視窗。 Shell 檢視應該移除所有擴充的用戶介面。 這些通常是合併的功能表和合併的無模式彈出視窗。

SVUIA_INPLACEACTIVATE

Shell 檢視處於作用中狀態,沒有焦點。 只有當 UIActivate 透過 IShellView2 介面公開時,才會使用此旗標。

傳回值

類型: HRESULT

如果成功,則傳回 S_OK ,否則傳回 COM 定義的錯誤值。

備註

重新合併功能表項之前,Shell 檢視通常會攔截 WM_SETFOCUS 訊息,並呼叫 OnViewWindowActive 方法。 殼層檢視不應該連結 NM_KILLFOCUS 訊息以重新合併功能表項。

呼叫應用程式的注意事項

呼叫此方法以通知啟用狀態變更的檢視。

實作者的注意事項

使用這個方法來追蹤啟用狀態,並視需要變更任何行為。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 shobjidl_core.h (包括 Shobjidl.h)
Dll Shell32.dll (4.0 版或更新版本)

另請參閱

IShellView