Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
[Microsoft Agent è deprecato a partire da Windows 7 e potrebbe non essere disponibile nelle versioni successive di Windows.]
HRESULT Activate(
short sState, // topmost character or client setting
);
Imposta un valore che indica se un client è attivo o un carattere è in primo piano.
- Restituisce S_OK per indicare che l'operazione è stata completata correttamente.
- Restituisce S_FALSE per indicare che l'operazione non è riuscita.
-
sState
-
È possibile specificare i valori seguenti per questo parametro:
Valore Descrizione 0 Impostare come non il client attivo. 1 Impostare come client attivo. 2 Imposta il carattere in alto.
Quando sono visibili più caratteri, solo uno dei caratteri riceve l'input vocale alla volta. Analogamente, quando più applicazioni client condividono lo stesso carattere, solo uno dei client riceve l'input del mouse (ad esempio, il clic o il trascinamento degli eventi di controllo di Microsoft Agent) alla volta. Il set di caratteri per ricevere l'input vocale e del mouse è il carattere superiore e il client che riceve l'input è il client attivo del carattere. La finestra del carattere superiore viene visualizzata anche nella parte superiore dell'ordine z della finestra dei caratteri. In genere, l'utente determina il carattere in alto selezionandolo in modo esplicito. Tuttavia, l'attivazione all'inizio cambia anche quando viene visualizzato o nascosto un carattere (il carattere diventa o non è più all'inizio, rispettivamente.
È anche possibile usare questo metodo per gestire in modo esplicito quando il client riceve l'input diretto al carattere, ad esempio quando l'applicazione stessa diventa attiva. Ad esempio, l'impostazione di State su 2 rende il carattere più in alto e il client riceve tutti gli eventi di input vocale e mouse generati dall'interazione dell'utente con il carattere. Pertanto, rende anche il client attivo per l'input del carattere. Tuttavia, è anche possibile impostare il client attivo per un carattere senza impostare il carattere in primo piano, impostando Stato su 1. In questo modo il client può ricevere l'input diretto a tale carattere quando il carattere diventa in primo piano. Analogamente, è possibile impostare il client in modo che non sia il client attivo (per non ricevere input) quando il carattere diventa in primo piano, impostando Stato su 0. È possibile determinare se un carattere ha altri client correnti usando IAgentCharacter::HasOtherClients.
Evitare di chiamare questo metodo direttamente dopo un metodo Show. Mostra imposta automaticamente il client attivo per l'input. Quando il carattere è nascosto, la chiamata activate potrebbe non riuscire, se viene elaborata prima del completamento del metodo Show.
Il tentativo di chiamare questo metodo con il parametro State impostato su 2 (quando il carattere specificato è nascosto) avrà esito negativo. Analogamente, se si imposta State su 0 e l'applicazione è l'unico client, questa chiamata ha esito negativo. Un carattere deve avere sempre un client più in alto.
Nota
La chiamata a questo metodo con State impostata su 1 non genera in genere un evento AgentNotifySink::ActivateInputState a meno che non siano presenti altri caratteri caricati o che l'applicazione non sia già attiva dall'input.
Vedere anche
IAgentCharacter::HasOtherClients