視窗控制項模式
描述實作 IWindowProvider的指導方針和慣例,包括屬性、方法和事件的相關資訊。 視窗控制項模式支援在傳統 GUI 內提供基本視窗型功能的控制項。
必須實作此控制項模式的控制項範例包括最上層應用程式視窗、多重文件介面 (MDI) 子視窗、可調整大小的分割窗格控制項、強制回應對話方塊,以及氣球說明視窗。 如需實作此控制項模式的控制項範例,請參閱 Control Pattern Mapping for UI Automation Clients。
本主題包含下列各節。
實作方針和慣例
實作 Window 控制項模式時,請注意下列指導方針和慣例:
- 若要支援使用 Microsoft 消費者介面自動化修改視窗大小和螢幕位置的能力,除了IWindowProvider之外,控制項還必須實作ITransformProvider。
- 包含標題列的控制項,以及可讓控制項移動、調整大小、最大化、最小化或關閉的標題列元素,通常需要實作 IWindowProvider。
- 工具提示快顯視窗和下拉式方塊或功能表下拉式功能表等控制項通常不會實作 IWindowProvider。
- 方塊說明視窗與基本工具提示快顯視窗不同,方法是布建類似視窗的 [關閉 ] 按鈕。
- IWindowProvider不支援全螢幕模式,因為它是應用程式特有的功能,而且不是典型的視窗行為。
IWindowProvider的必要成員
實作 IWindowProvider 介面時,需要下列屬性、方法和事件。
必要成員 | 成員類型 | 備註 |
---|---|---|
WindowInteractionState | 屬性 | 不保證 WindowInteractionState_ReadyForUserInteraction |
IsModal | 屬性 | 無 |
IsTopmost | 屬性 | 無 |
CanMaximize | 屬性 | 無 |
CanMinimize | 屬性 | 無 |
WindowVisualState | 屬性 | 無 |
關閉 | 方法 | 無 |
SetVisualState | 方法 | 無 |
WaitForInputIdle | 方法 | 無 |
UIA_Window_WindowClosedEventId | 事件 | 無 |
UIA_Window_WindowOpenedEventId | 事件 | 無 |
相關主題