Come generare eventi da un provider di Automazione interfaccia utente
Questo argomento contiene codice di esempio che illustra come un provider di Automazione interfaccia utente Microsoft genera un evento.
Il codice di esempio seguente mostra un metodo da un'applicazione che implementa un pulsante personalizzato. L'applicazione chiama il metodo ogni volta che viene richiamato il pulsante personalizzato. Il metodo verifica se i client sono in ascolto di eventi e, in tal caso, genera l'evento UIA_Invoke_InvokedEventId per notificare ai client che il pulsante è stato richiamato.
// 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);
}
}
Argomenti correlati
-
Informazioni concettuali
-
Cenni preliminari sugli eventi di automazione interfaccia utente
-
Argomenti di procedura per i provider di Automazione interfaccia utente