Condividi tramite


Costanti stato oggetto

In questo argomento vengono descritti i valori costanti usati per descrivere lo stato degli oggetti in un'interfaccia utente dell'applicazione. Le costanti di stato sono definite in oleacc.h.

Un oggetto è associato a uno o più di questi valori di stato in qualsiasi momento. Le costanti di stato dell'oggetto seguenti non vengono utilizzate: STATE_SYSTEM_ALERT_HIGH, STATE_SYSTEM_ALERT_MEDIUM, STATE_SYSTEM_ALERT_LOW e STATE_SYSTEM_FLOATING.

I client recuperano lo stato di un oggetto chiamando IAccessible::get_accState, che restituisce un numero intero che è una combinazione dei flag di bit seguenti. I client chiamano GetStateText con il valore dello stato per recuperare una stringa localizzata che descrive lo stato dell'oggetto.

Quando lo stato di un oggetto cambia, i server devono chiamare NotifyWinEvent con la costante evento EVENT_OBJECT_STATECHANGE. Tuttavia, gli oggetti con le costanti STATE_SYSTEM_INVISIBLE, STATE_SYSTEM_FOCUSED e STATE_SYSTEM_ stato dell'oggetto SELECTED hanno costanti evento personalizzate. Per questi oggetti, non usare EVENT_OBJECT_STATECHANGE. Usare invece la costante dell'evento singolo.

Di seguito sono riportate le costanti dello stato dell'oggetto:

Costante Descrizione
STATE_SYSTEM_ALERT_HIGH
0x10000000
Questa costante dello stato dell'oggetto non è supportata.
Indica informazioni importanti da trasmettere immediatamente all'utente. Ad esempio, quando una batteria raggiunge un livello critico basso, un indicatore di livello genera un avviso di alto livello. Di conseguenza, uno strumento di accesso cieco annuncia immediatamente queste informazioni all'utente e un programma di ingrandimento dello schermo scorre lo schermo in modo che l'indicatore della batteria sia visualizzato. Questo stato è appropriato anche per qualsiasi richiesta o operazione che deve essere completata prima che l'utente possa continuare.
STATE_SYSTEM_ALERT_MEDIUM
0x8000000
Questa costante dello stato dell'oggetto non è supportata.
Indica informazioni importanti che non vengono trasmesse immediatamente all'utente. Ad esempio, quando una batteria inizia a raggiungere un livello basso, un indicatore di livello genera un avviso di livello medio. Uno strumento di accesso cieco genera quindi un suono per informare l'utente che le informazioni importanti sono disponibili, senza interrompere effettivamente il lavoro dell'utente. L'utente potrebbe quindi eseguire query sulle informazioni sull'avviso quando è utile.
STATE_SYSTEM_ALERT_LOW
0x4000000
Questa costante dello stato dell'oggetto non è supportata.
Indica informazioni con priorità bassa che non sono importanti per l'utente. Questo stato viene usato, ad esempio, quando Word modifica l'aspetto del pulsante TipWizard sulla relativa barra degli strumenti per indicare che ha un suggerimento per l'utente.
STATE_SYSTEM_ANIMATED
0x4000
L'aspetto dell'oggetto cambia rapidamente o costantemente. La grafica animata a volte viene descritta come ROLE_SYSTEM_GRAPHIC con la proprietà State impostata su STATE_SYSTEM_ANIMATED. Questo stato viene usato per indicare che la posizione dell'oggetto sta cambiando.
STATE_SYSTEM_BUSY
0x800
Il controllo non può accettare l'input al momento.
STATE_SYSTEM_CHECKED
0x10
La casella di controllo dell'oggetto è selezionata.
STATE_SYSTEM_COLLAPSED
0x400
Gli elementi figlio dell'oggetto con il ruolo ROLE_SYSTEM_OUTLINEITEM sono nascosti.
STATE_SYSTEM_DEFAULT
0x100
Questo stato rappresenta il pulsante predefinito in una finestra.
STATE_SYSTEM_EXPANDED
0x200
Vengono visualizzati gli elementi figlio dell'oggetto con il ruolo ROLE_SYSTEM_OUTLINEITEM.
STATE_SYSTEM_EXTSELECTABLE
0x2000000
Indica che un oggetto estende la selezione utilizzando SELFLAG_EXTENDSELECTION nel metodo IAccessible::accSelect.
STATE_SYSTEM_FLOATING
0x1000
Questa costante dello stato dell'oggetto non è supportata.
L'oggetto non viene ritagliato al limite del relativo oggetto padre e non viene spostato automaticamente quando l'elemento padre viene spostato.
STATE_SYSTEM_FOCUSABLE
0x100000
L'oggetto si trova nella finestra attiva ed è pronto per ricevere lo stato attivo della tastiera.
STATE_SYSTEM_FOCUSED
0x4
L'oggetto ha lo stato attivo della tastiera. Non confondere lo stato attivo dell'oggetto con la selezione dell'oggetto. Per altre informazioni, vedere proprietà e metodi di selezione e messa a fuoco. Per gli oggetti con questo stato dell'oggetto, inviare il EVENT_OBJECT_SHOW o EVENT_OBJECT_HIDE WinEvents per notificare alle applicazioni client le modifiche dello stato. Non usare EVENT_OBJECT_STATECHANGE.
STATE_SYSTEM_HASPOPUP
0x40000000
Quando viene richiamato, l'oggetto visualizza un menu a comparsa o una finestra.
STATE_SYSTEM_HOTTRACKED
0x80
L'oggetto viene rilevato dal mouse, il che significa che l'aspetto dell'oggetto è stato modificato per indicare che il puntatore del mouse si trova su di esso.
STATE_SYSTEM_INVISIBLE
0x8000
L'oggetto è nascosto a livello di codice. Ad esempio, gli itmi di menu vengono nascosti a livello di codice fino a quando un utente non attiva il menu. Poiché gli oggetti con questo stato non sono disponibili per gli utenti, le applicazioni client non devono comunicare informazioni sull'oggetto agli utenti. Tuttavia, se le applicazioni client trovano un oggetto con questo stato, devono verificare se è impostato anche STATE_SYSTEM_OFFSCREEN. Se questo secondo stato è definito, i client possono comunicare le informazioni sull'oggetto agli utenti. Ad esempio, una casella di riepilogo può avere sia STATE_SYSTEM_INVISIBLE che STATE_SYSTEM_OFFSCREEN impostato. In questo caso, l'applicazione client può comunicare tutti gli elementi dell'elenco agli utenti.
Se un'applicazione client passa attraverso un albero IAccessible e rileva un oggetto padre invisibile, Microsoft Active Accessibility non esporrà informazioni sui possibili elementi figlio dell'elemento padre, purché il padre non sia invisibile.
STATE_SYSTEM_LINKED
0x400000
Indica che l'oggetto è formattato come collegamento ipertestuale. Il ruolo dell'oggetto sarà in genere ROLE_SYSTEM_TEXT.
STATE_SYSTEM_MARQUEED
0x2000
Indica lo scorrimento o lo spostamento di testo o grafica.
STATE_SYSTEM_MIXED
0x20
Indica che lo stato di una casella di controllo o di un pulsante della barra degli strumenti a tre stati non è determinato. La casella di controllo non è selezionata né deselezionata ed è pertanto nel terzo o stato misto.
STATE_SYSTEM_MOVEABLE
0x40000
Indica che l'oggetto può essere spostato. Ad esempio, un utente può fare clic sulla barra del titolo dell'oggetto e trascinare l'oggetto in una nuova posizione.
STATE_SYSTEM_MULTISELECTABLE
0x1000000
Indica che l'oggetto accetta più elementi selezionati; ovvero SELFLAG_ADDSELECTION per il metodo IAccessible::accSelect è valido.
STATE_SYSTEM_NORMAL
0
Indica che all'oggetto non è assegnato un altro stato.
STATE_SYSTEM_OFFSCREEN
0x10000
L'oggetto viene ritagliato o è stato eseguito lo scorrimento all'esterno della visualizzazione, ma non è nascosto a livello di codice. Se l'utente rende il riquadro di visualizzazione più grande, più dell'oggetto sarà visibile sullo schermo del computer.
STATE_SYSTEM_PRESSED
0x8
L'oggetto viene premuto.
STATE_SYSTEM_PROTECTED
0x20000000
L'oggetto è un controllo di modifica protetto da password.
STATE_SYSTEM_READONLY
0x40
L'oggetto è designato di sola lettura.
STATE_SYSTEM_SELECTABLE
0x200000
L'oggetto accetta la selezione.
STATE_SYSTEM_SELECTED
0x2
L'oggetto è selezionato.
STATE_SYSTEM_SELFVOICING
0x80000
L'oggetto o figlio usa la tecnologia TTS (Text-to-Speech) a scopo di descrizione. Quando un oggetto con questo stato ha lo stato attivo, un supporto per l'accessibilità basata sul parlato non annuncia informazioni perché l'oggetto lo annuncia automaticamente.
STATE_SYSTEM_SIZEABLE
0x20000
L'oggetto può essere ridimensionato. Ad esempio, un utente potrebbe modificare le dimensioni di una finestra trascinandolo in base al bordo.
STATE_SYSTEM_TRAVERSED
0x800000
L'oggetto è un collegamento ipertestuale visitato (precedentemente selezionato) da un utente.
STATE_SYSTEM_UNAVAILABLE
0x1
L'oggetto non è disponibile.

Fabbisogno

Requisito Valore
Intestazione
Oleacc.h