Partager via


Comment déclencher des événements à partir d’un fournisseur de UI Automation

Cette rubrique contient un exemple de code qui montre comment un fournisseur microsoft UI Automation déclenche un événement.

L’exemple de code suivant montre une méthode d’une application qui implémente un bouton personnalisé. L’application appelle la méthode chaque fois que le bouton personnalisé est appelé. La méthode vérifie si des clients sont à l’écoute des événements et, le cas échéant, déclenche l’événement UIA_Invoke_InvokedEventId pour informer les clients que le bouton a été appelé.

// Responds to a button click. The source of the click could 
// be the mouse, the keyboard, or a client's call to 
// IUIAutomationInvokePattern::Invoke.
void CustomButton::InvokeButton(HWND hwnd)
{
    // TODO: Perform program actions invoked by the control.

    // Check whether any clients are listening for UI Automation 
    // events.
    if (UiaClientsAreListening())
    {
        // Raise an Invoked event. GetUIAutomationProvider is an
        // application-defined method that returns a pointer to
        // the application's IRawElementProviderSimple interface.
        UiaRaiseAutomationEvent(
            GetUIAutomationProvider(hwnd), UIA_Invoke_InvokedEventId); 
    }
}

Conceptuel

Vue d'ensemble des événements UI Automation

Rubriques de procédures pour les fournisseurs de UI Automation