AccessibleEvents 列舉

定義

指定可存取應用程式報告的事件。

public enum class AccessibleEvents
public enum AccessibleEvents
type AccessibleEvents = 
Public Enum AccessibleEvents
繼承
AccessibleEvents

欄位

AcceleratorChange 32786

物件的 KeyboardShortcut 屬性已經變更。 伺服器應用程式為它們的可存取物件傳送事件。

Create 32768

物件已建立。 作業系統為以下使用者介面項目傳送事件:插入號 (Caret)、標題控制項 (Header Control)、清單檢視控制項、索引標籤控制項 (Tab Control)、工具列控制項、樹狀檢視控制項、視窗物件。 伺服器應用程式為它們的可存取物件傳送這個事件。 伺服器必須先為物件的所有子物件傳送這個事件,再傳送父物件的事件。 伺服器必須確定,父物件傳送事件時,所有的子物件都完全建立,且準備好可接受用戶端的呼叫。

DefaultActionChange 32785

物件的 DefaultAction 屬性已經變更。 系統為對話方塊傳送這個屬性。 伺服器應用程式為它們的可存取物件傳送這個事件。 所以,伺服器應用程式不需要為子物件傳送這個事件。 隱藏物件具有 Invisible 的狀態,而顯示的物件則沒有。 AccessibleEvents.Hide 型別的事件會指示已設定 Invisible 的狀態。 因此,這種情況下,伺服器不需要傳送 AccessibleEvents.StateChange 事件。

DescriptionChange 32781

物件的 Description 屬性已經變更。 伺服器應用程式為它們的可存取物件傳送這個事件。

Destroy 32769

物件已終結。 系統為以下使用者介面項目傳送這個事件:插入號、標題控制項、清單檢視控制項、索引標籤控制項、工具列控制項、樹狀檢視控制項、視窗物件。 伺服器應用程式為它們的可存取物件傳送這個事件。 這個事件可能會也可能不會針對子物件傳送。 不過,用戶端可以推斷,當父物件傳送這個事件時,物件所有的子系都已經終結。

Focus 32773

物件已接收鍵盤焦點。 系統為以下使用者介面項目傳送這個事件:清單檢視控制項、功能表列、捷徑功能表、切換視窗、索引標籤控制項、樹狀檢視控制項和視窗物件。 伺服器應用程式為它們的可存取物件傳送這個事件。

HelpChange 32784

物件的 Help 屬性已經變更。 伺服器應用程式為它們的可存取物件傳送這個事件。

Hide 32771

物件被隱藏。 系統為以下使用者介面項目傳送這個事件:插入號和游標。 伺服器應用程式為它們的可存取物件傳送事件。 為父物件產生這個事件時,所有的子物件都已經被隱藏起來。 所以,伺服器應用程式不需要為子物件傳送事件。 系統不會持續地傳送事件。

LocationChange 32779

物件已變更位置、形狀或大小。 系統為以下使用者介面項目傳送這個事件:插入號、視窗物件。 伺服器應用程式為它們的可存取物件傳送這個事件。 這個事件是回應物件階層架構中已經變更的上層物件所產生出來的,不是為了事件中可能含有的任何子系。 例如,如果使用者重設視窗大小,系統會傳送視窗的通知,但不包括功能表列、標題列、捲軸或是也已經變更的其他物件。 父系移動時,系統不會為每個非浮動的子視窗傳送這個事件。 不過,如果應用程式因為重設大小而明確地重設子視窗的大小,系統會為重設大小的子系傳送多重事件。 如果物件的 State 屬性設定為 Floating,每當物件變更位置,伺服器都應該傳送位置變更事件。 如果有物件沒有這個狀態,物件相對於父系移動時,伺服器應該引發這個事件。

NameChange 32780

物件的 Name 屬性已經變更。 系統為以下使用者介面項目傳送這個事件:核取方塊、游標、清單檢視控制項、按鈕、選項按鈕、狀態列控制項、樹狀檢視控制項、視窗物件。 伺服器應用程式為它們的可存取物件傳送這個事件。

ParentChange 32783

物件有新的父物件。 伺服器應用程式為它們的可存取物件傳送這個事件。

Reorder 32772

容器物件已新增、移除或重新排列它的子系。 系統為以下使用者介面項目傳送這個事件:標題控制項、清單檢視控制項、工具列控制項和視窗物件。 伺服器應用程式為它們的可存取物件傳送這個事件。 子視窗的 疊置順序變更時,父視窗也會傳送這個事件。

Selection 32774

容器物件內的可存取物件已經選取。 這個事件通知單一選擇項目。 不是先前不含有任何選定子系的容器中已選取子系,就是選擇項目已經從一子系變更到另一子系。

SelectionAdd 32775

容器物件中有一個項目加入選擇項目中。 系統為以下使用者介面項目傳送這個事件:清單方塊、清單檢視控制項、樹狀檢視控制項。 伺服器應用程式為它們的可存取物件傳送這個事件。 這個事件通知,子系已加入現有的選擇項目中。

SelectionRemove 32776

容器物件中有一個項目從選擇項目中移除。 系統為以下使用者介面項目傳送這個事件:清單方塊、清單檢視控制項、樹狀檢視控制項。 伺服器應用程式為它們的可存取物件傳送這個事件。 這個事件通知,子系已從現有的選擇項目中移除。

SelectionWithin 32777

容器物件內發生許多選擇項目的變更。 系統為清單方塊傳送這個事件。 伺服器應用程式為它們的可存取物件傳送這個事件。 控制項內的已選取項目已經大幅變更,可傳送這個事件。 這個事件告知用戶端,已發生許多選擇項目的變更。 這樣比傳送數個 SelectionAddSelectionRemove 事件更好。

Show 32770

隱藏的物件正顯示出來。 系統為以下使用者介面項目傳送這個事件:插入號、游標、視窗物件。 伺服器應用程式為它們的可存取物件傳送這個事件。 用戶端可以推斷,當父物件傳送這個事件時,所有子物件都已經顯示。 所以,伺服器應用程式不需要為子物件傳送這個事件。

StateChange 32778

物件的狀態已經變更。 系統為以下使用者介面項目傳送這個事件:核取方塊、下拉式方塊、標題控制項、按鈕、選項按鈕、捲軸、工具列控制項、樹狀檢視控制項、上下按鈕控制項、視窗物件。 伺服器應用程式為它們的可存取物件傳送事件。 例如,按鈕物件被按下或放開時,或物件正被啟動或停用時,可發生狀態變更。 系統不會持續地傳送事件。

SystemAlert 2

警告已產生。 每當重要的使用者介面已經發生使用者可能需要知道的變更,伺服器應用程式就會傳送這個事件。 系統不會持續地為對話方塊物件傳送事件。

SystemCaptureEnd 9

視窗已失去滑鼠捕捉 (Mouse Capture)。 系統會傳送事件;伺服器遠永不會傳送這個事件。

SystemCaptureStart 8

視窗正被移動或重設大小。 系統會傳送事件;伺服器遠永不會傳送這個事件。

SystemContextHelpEnd 13

視窗結束了即時線上說明模式。 系統不會持續地傳送事件。

SystemContextHelpStart 12

視窗進入了即時線上說明模式。 系統不會持續地傳送事件。

SystemDialogEnd 17

對話方塊已關閉。 系統不會為標準對話方塊傳送事件。 伺服器會為自訂對話方塊傳送這個事件。 系統不會持續地傳送事件。

SystemDialogStart 16

對話方塊已顯示。 系統會為標準對話方塊傳送事件。 伺服器會為自訂對話方塊傳送這個事件。 系統不會持續地傳送事件。

SystemDragDropEnd 15

應用程式即將結束拖放模式。 支援拖放作業的應用程式必須傳送這個事件,系統並不傳送。

SystemDragDropStart 14

應用程式即將進入拖放模式。 支援拖放作業的應用程式必須傳送這個事件,系統並不傳送。

SystemForeground 3

前景視窗已變更。 即使前景視窗變更為同一執行緒中的其他視窗,系統還是會傳送這個事件。 伺服器應用程式絕對不會傳送這個事件。

SystemMenuEnd 5

功能表列中的功能表已關閉。 系統會為標準功能表傳送這個事件。 伺服器會為自訂功能表傳送這個事件。

SystemMenuPopupEnd 7

捷徑功能表已關閉。 系統會為標準功能表傳送這個事件。 伺服器會為自訂功能表傳送這個事件。 當捷徑功能表關閉時,用戶端幾乎會立刻收到由 SystemMenuEnd 事件傳送的訊息。 系統不會持續地傳送事件。

如需 對 TrackPopupMenu () 的呼叫,用戶端會看到 EVENT_SYSTEM_MENUSTART 幾乎緊接 EVENT_SYSTEM_MENUPOPUPSTART 在 後面,以顯示快顯。

SystemMenuPopupStart 6

捷徑功能表已顯示。 系統會為標準功能表傳送這個事件。 伺服器會為自訂功能表傳送這個事件。 系統不會持續地傳送事件。

如需 對 TrackPopupMenu () 的呼叫,用戶端會看到 EVENT_SYSTEM_MENUSTART 幾乎緊接 EVENT_SYSTEM_MENUPOPUPSTART 在 後面,以顯示快顯。

SystemMenuStart 4

功能表列的功能表項目已選取。 系統會為標準功能表傳送這個事件。 伺服器會為自訂功能表傳送這個事件。 系統可能引發不只一個可能有也可能沒有對應的 MenuStart 事件的 MenuEnd 事件。

SystemMinimizeEnd 23

視窗物件已最小化或最大化。 系統會傳送事件;伺服器遠永不會傳送這個事件。

SystemMinimizeStart 22

視窗物件即將最小化或最大化。 系統會傳送事件;伺服器遠永不會傳送這個事件。

SystemMoveSizeEnd 11

視窗的移動或重設大小已經完成。 系統會傳送事件;伺服器遠永不會傳送這個事件。

SystemMoveSizeStart 10

視窗正被移動或重設大小。 系統會傳送事件;伺服器遠永不會傳送這個事件。

SystemScrollingEnd 19

捲動已在捲軸處結束。 系統會為附加到視窗的捲軸和標準捲軸控制項傳送這個事件。 伺服器會為自訂捲軸傳送這個事件。

SystemScrollingStart 18

捲動已在捲軸處開始。 系統會為附加到視窗的捲軸和標準捲軸控制項傳送這個事件。 伺服器會為自訂捲軸傳送這個事件。

SystemSound 1

音效已播放。 當系統音效 (例如功能表的音效) 播放時,即使聽不見聲音,系統還是會傳送這個事件。 這可能是因為沒有聲音檔或音效卡所造成的。 當自訂的使用者介面項目會產生聲音時,伺服器就會傳送此一事件。

SystemSwitchEnd 21

使用者已釋放 ALT+TAB 鍵。 系統會傳送 SwitchEnd 事件;伺服器遠永不會傳送這個事件。 使用者按下 ALT+TAB 鍵時,如果只有一個應用程式在執行當中,系統會傳送 SwitchEnd 事件,而沒有對應的 SwitchStart 事件。

SystemSwitchStart 20

使用者按下 ALT+TAB 鍵而啟動切換視窗。 使用者按下 ALT+TAB 鍵時,如果只有一個應用程式在執行當中,系統會引發 SwitchEnd 事件,而沒有對應的 SwitchStart 事件。

ValueChange 32782

物件的 Value 屬性已經變更。 系統為以下使用者介面項目引發 ValueChange 事件:編輯控制項、標題控制項、熱鍵控制項、進度列控制項 (Progress Bar Control)、捲軸、滑桿 (Slider Control)、上下按鈕控制項。 伺服器應用程式為它們的可存取物件傳送這個事件。

範例

下列程式碼範例示範如何使用 AccessibleObjectControl.ControlAccessibleObject 類別來公開無障礙資訊,建立協助工具感知圖表控制項。 控制項會繪製兩個曲線以及圖例。 ChartControlAccessibleObject衍生自 ControlAccessibleObject 的 類別會用於 方法中 CreateAccessibilityInstance ,以提供圖表控制項的自訂可存取訊號。 因為圖表圖例不是實際的 Control 控制項,而是由圖表控制項繪製,所以它不會有任何內建的可存取訊號。 因此,類別 ChartControlAccessibleObjectGetChild 覆寫 方法,以傳回 CurveLegendAccessibleObject ,代表圖例每個部分的可存取訊號。 當可存取感知應用程式使用此控制項時,控制項可以提供必要的可存取訊號。

這個範例示範如何搭配 AccessibilityNotifyClients 方法使用 AccessibleEvents 列舉。 AccessibleObject如需完整的程式碼範例,請參閱類別概觀。

   // Gets or sets the location for the curve legend.
   Point get()
   {
      return location;
   }

   void set( Point value )
   {
      location = value;
      chart->Invalidate();
      
      // Notifies the chart of the location change. This is used for
      // the accessibility information. AccessibleEvents::LocationChange
      // tells the chart the reason for the notification.
      chart->AccessibilityNotifyClients( AccessibleEvents::LocationChange, (dynamic_cast<CurveLegendAccessibleObject^>(AccessibilityObject))->ID );
   }

}

property String^ Name 
{

   // Gets or sets the Name for the curve legend.
   String^ get()
   {
      return name;
   }

   void set( String^ value )
   {
      if ( name != value )
      {
         name = value;
         chart->Invalidate();
         
         // Notifies the chart of the name change. This is used for
         // the accessibility information. AccessibleEvents::NameChange
         // tells the chart the reason for the notification.
         chart->AccessibilityNotifyClients( AccessibleEvents::NameChange, (dynamic_cast<CurveLegendAccessibleObject^>(AccessibilityObject))->ID );
      }
   }

}

property bool Selected 
{

   // Gets or sets the Selected state for the curve legend.
   bool get()
   {
      return selected;
   }

   void set( bool value )
   {
      if ( selected != value )
      {
         selected = value;
         chart->Invalidate();
         
         // Notifies the chart of the selection value change. This is used for
         // the accessibility information. The AccessibleEvents value depends upon
         // if the selection is true (AccessibleEvents::SelectionAdd) or
         // false (AccessibleEvents::SelectionRemove).
         chart->AccessibilityNotifyClients( selected ? AccessibleEvents::SelectionAdd : AccessibleEvents::SelectionRemove, (dynamic_cast<CurveLegendAccessibleObject^>(AccessibilityObject))->ID );
      }
   }
    // Gets or sets the location for the curve legend.
    public Point Location
    {   
        get {
            return location;
        }
        set {
            location = value;
            chart.Invalidate();

            // Notifies the chart of the location change. This is used for
            // the accessibility information. AccessibleEvents.LocationChange
            // tells the chart the reason for the notification.

            chart.AccessibilityNotifyClients(AccessibleEvents.LocationChange, 
                ((CurveLegendAccessibleObject)AccessibilityObject).ID);
        }
    }            

    // Gets or sets the Name for the curve legend.
    public string Name
    {   
        get {
            return name;
        }
        set {
            if (name != value) 
            {
                name = value;
                chart.Invalidate();

                // Notifies the chart of the name change. This is used for
                // the accessibility information. AccessibleEvents.NameChange
                // tells the chart the reason for the notification.

                chart.AccessibilityNotifyClients(AccessibleEvents.NameChange, 
                    ((CurveLegendAccessibleObject)AccessibilityObject).ID);
            }
        }
    }

    // Gets or sets the Selected state for the curve legend.
    public bool Selected
    {   
        get {
            return selected;
        }
        set {
            if (selected != value) 
            {
                selected = value;
                chart.Invalidate();

                // Notifies the chart of the selection value change. This is used for
                // the accessibility information. The AccessibleEvents value depends upon
                // if the selection is true (AccessibleEvents.SelectionAdd) or 
                // false (AccessibleEvents.SelectionRemove).
                chart.AccessibilityNotifyClients(
                    selected ? AccessibleEvents.SelectionAdd : AccessibleEvents.SelectionRemove, 
                    ((CurveLegendAccessibleObject)AccessibilityObject).ID);
            }
        }
    }
' Gets or sets the location for the curve legend.            
Public Property Location() As Point
    Get
        Return m_location
    End Get
    Set
        m_location = value
        chart.Invalidate()

        ' Notifies the chart of the location change. This is used for
        ' the accessibility information. AccessibleEvents.LocationChange
        ' tells the chart the reason for the notification.
        chart.ExposeAccessibilityNotifyClients(AccessibleEvents.LocationChange, _
                CType(AccessibilityObject, CurveLegendAccessibleObject).ID)
    End Set
End Property

' Gets or sets the Name for the curve legend.            
Public Property Name() As String
    Get
        Return m_name
    End Get
    Set
        If m_name <> value Then
            m_name = value
            chart.Invalidate()

            ' Notifies the chart of the name change. This is used for
            ' the accessibility information. AccessibleEvents.NameChange
            ' tells the chart the reason for the notification. 
            chart.ExposeAccessibilityNotifyClients(AccessibleEvents.NameChange, _
                    CType(AccessibilityObject, CurveLegendAccessibleObject).ID)
        End If
    End Set
End Property

' Gets or sets the Selected state for the curve legend.            
Public Property Selected() As Boolean
    Get
        Return m_selected
    End Get
    Set
        If m_selected <> value Then
            m_selected = value
            chart.Invalidate()

            ' Notifies the chart of the selection value change. This is used for
            ' the accessibility information. The AccessibleEvents value varies
            ' on whether the selection is true (AccessibleEvents.SelectionAdd) or 
            ' false (AccessibleEvents.SelectionRemove). 
            If m_selected Then
                chart.ExposeAccessibilityNotifyClients(AccessibleEvents.SelectionAdd, _
                        CType(AccessibilityObject, CurveLegendAccessibleObject).ID) 
            Else
                chart.ExposeAccessibilityNotifyClients(AccessibleEvents.SelectionRemove, _
                        CType(AccessibilityObject, CurveLegendAccessibleObject).ID) 
            End If
        End If
    End Set
End Property

備註

作業系統和協助工具伺服器應用程式會產生協助工具事件,以回應使用者介面中的變更。

和 會使用此 AccessibleObject Control 列舉。

如需詳細資訊,請參閱 Microsoft Active Accessibility

適用於

另請參閱