Stałe stanu obiektu
W tym temacie opisano stałe wartości używane do opisywania stanu obiektów w interfejsie użytkownika aplikacji. Stałe stanu są definiowane w pliku oleacc.h.
Obiekt jest skojarzony z co najmniej jedną z tych wartości stanu w dowolnym momencie. Następujące stałe stanu obiektu nie są używane: STATE_SYSTEM_ALERT_HIGH, STATE_SYSTEM_ALERT_MEDIUM, STATE_SYSTEM_ALERT_LOW i STATE_SYSTEM_FLOATING.
Klienci pobierają stan obiektu, wywołując metodę IAccessible::get_accState, która zwraca liczbę całkowitą, która jest kombinacją następujących flag bitowych. Klienci wywołają GetStateText z wartością stanu w celu pobrania zlokalizowanego ciągu opisującego stan obiektu.
Gdy stan obiektu ulegnie zmianie, serwery powinny wywoływać NotifyWinEvent ze stałą zdarzenia EVENT_OBJECT_STATECHANGE. Jednak obiekty z STATE_SYSTEM_INVISIBLE, STATE_SYSTEM_FOCUSED i STATE_SYSTEM_ stałe stanu wybranego obiektu mają własne stałe zdarzeń. W przypadku tych obiektów nie należy używać EVENT_OBJECT_STATECHANGE. Zamiast tego należy użyć stałej pojedynczego zdarzenia.
Poniżej przedstawiono stałe stanu obiektu:
Stały | Opis |
---|---|
STATE_SYSTEM_ALERT_HIGH 0x10000000 |
(Ta stała stanu obiektu nie jest obsługiwana). Wskazuje ważne informacje, które mają być natychmiast przekazywane użytkownikowi. Na przykład gdy bateria osiągnie krytycznie niski poziom, wskaźnik poziomu generuje alert wysokiego poziomu. W związku z tym narzędzie dostępu do ślepego dostępu natychmiast ogłasza te informacje użytkownikowi, a program powiększania ekranu przewija ekran tak, aby wskaźnik baterii był w widoku. Ten stan jest również odpowiedni dla każdego monitu lub operacji, które należy wykonać, zanim użytkownik będzie mógł kontynuować. |
STATE_SYSTEM_ALERT_MEDIUM 0x8000000 |
(Ta stała stanu obiektu nie jest obsługiwana). Wskazuje ważne informacje, które nie są przekazywane natychmiast użytkownikowi. Na przykład gdy bateria zaczyna osiągać niski poziom, wskaźnik poziomu generuje alert średniopoziomowy. Następnie narzędzie dostępu ślepego generuje dźwięk, aby poinformować użytkownika, że ważne informacje są dostępne bez przerywania pracy użytkownika. Użytkownik może następnie wykonać zapytanie dotyczące informacji o alercie, gdy jest to wygodne. |
STATE_SYSTEM_ALERT_LOW 0x4000000 |
(Ta stała stanu obiektu nie jest obsługiwana). Wskazuje informacje o niskim priorytcie, które nie są ważne dla użytkownika. Ten stan jest używany, na przykład gdy program Word zmienia wygląd przycisku TipWizard na pasku narzędzi, aby wskazać, że ma wskazówkę dla użytkownika. |
STATE_SYSTEM_ANIMATED 0x4000 |
Wygląd obiektu zmienia się szybko lub stale. Grafika, która jest animowana od czasu do czasu, są opisywane jako ROLE_SYSTEM_GRAPHIC z właściwością State ustawioną na STATE_SYSTEM_ANIMATED. Ten stan służy do wskazywania, że lokalizacja obiektu się zmienia. |
STATE_SYSTEM_BUSY 0x800 |
Kontrolka nie może obecnie akceptować danych wejściowych. |
STATE_SYSTEM_CHECKED 0x10 |
Pole wyboru obiektu jest zaznaczone. |
STATE_SYSTEM_COLLAPSED 0x400 |
Elementy podrzędne obiektu, które mają rolę ROLE_SYSTEM_OUTLINEITEM, są ukryte. |
STATE_SYSTEM_DEFAULT 0x100 |
Ten stan reprezentuje przycisk domyślny w oknie. |
STATE_SYSTEM_EXPANDED 0x200 |
Zostaną wyświetlone elementy podrzędne obiektu, które mają rolę ROLE_SYSTEM_OUTLINEITEM. |
STATE_SYSTEM_EXTSELECTABLE 0x2000000 |
Wskazuje, że obiekt rozszerza wybór przy użyciu SELFLAG_EXTENDSELECTION w metodzie IAccessible::accSelect. |
STATE_SYSTEM_FLOATING 0x1000 |
(Ta stała stanu obiektu nie jest obsługiwana). Obiekt nie jest przycięty do granicy obiektu nadrzędnego i nie przenosi się automatycznie po przeniesieniu obiektu nadrzędnego. |
STATE_SYSTEM_FOCUSABLE 0x100000 |
Obiekt znajduje się w aktywnym oknie i jest gotowy do odbierania fokusu klawiatury. |
STATE_SYSTEM_FOCUSED 0x4 |
Obiekt ma fokus klawiatury. Nie należy mylić fokusu obiektu z zaznaczeniem obiektu. Aby uzyskać więcej informacji, zobacz Selection and Focus Properties and Methods. W przypadku obiektów o tym stanie obiektu wyślij EVENT_OBJECT_SHOW lub EVENT_OBJECT_HIDE WinEvents, aby powiadomić aplikacje klienckie o zmianach stanu. Nie używaj EVENT_OBJECT_STATECHANGE. |
STATE_SYSTEM_HASPOPUP 0x40000000 |
Po wywołaniu obiekt wyświetla menu podręczne lub okno. |
STATE_SYSTEM_HOTTRACKED 0x80 |
Obiekt jest śledzony na gorąco przez mysz, co oznacza, że wygląd obiektu zmienił się, aby wskazać, że wskaźnik myszy znajduje się nad nim. |
STATE_SYSTEM_INVISIBLE 0x8000 |
Obiekt jest programowo ukryty. Na przykład itmes menu są programowo ukryte do momentu aktywowania menu przez użytkownika. Ponieważ obiekty o tym stanie nie są dostępne dla użytkowników, aplikacje klienckie nie mogą komunikować informacji o obiekcie użytkownikom. Jeśli jednak aplikacje klienckie znajdą obiekt o tym stanie, powinni sprawdzić, czy STATE_SYSTEM_OFFSCREEN jest również ustawiona. Jeśli ten drugi stan jest zdefiniowany, klienci mogą przekazać użytkownikom informacje o obiekcie. Na przykład pole listy może mieć zarówno zestaw STATE_SYSTEM_INVISIBLE, jak i STATE_SYSTEM_OFFSCREEN. W takim przypadku aplikacja kliencka może komunikować się ze wszystkimi elementami na liście użytkownikom. Jeśli aplikacja kliencka przechodzi przez drzewo IAccessible i napotka obiekt nadrzędny, który jest niewidoczny, usługa Microsoft Active Accessibility nie uwidacznia informacji o wszelkich możliwych elementach podrzędnych elementu nadrzędnego, o ile element nadrzędny jest niewidoczny. |
STATE_SYSTEM_LINKED 0x400000 |
Wskazuje, że obiekt jest sformatowany jako hiperłącze. Rola obiektu będzie zwykle ROLE_SYSTEM_TEXT. |
STATE_SYSTEM_MARQUEED 0x2000 |
Wskazuje przewijanie lub przenoszenie tekstu lub grafiki. |
STATE_SYSTEM_MIXED 0x20 |
Wskazuje, że stan pola wyboru trójstanowego lub przycisku paska narzędzi nie jest określony. Pole wyboru nie jest ani zaznaczone, ani czyszczone i dlatego znajduje się w trzecim lub mieszanym stanie. |
STATE_SYSTEM_MOVEABLE 0x40000 |
Wskazuje, że obiekt można przenieść. Na przykład użytkownik może kliknąć pasek tytułu obiektu i przeciągnąć obiekt do nowej lokalizacji. |
STATE_SYSTEM_MULTISELECTABLE 0x1000000 |
Wskazuje, że obiekt akceptuje wiele zaznaczonych elementów; oznacza to, że SELFLAG_ADDSELECTION dla metody IAccessible::accSelect jest prawidłowa. |
STATE_SYSTEM_NORMAL 0 |
Wskazuje, że obiekt nie ma przypisanego innego stanu. |
STATE_SYSTEM_OFFSCREEN 0x10000 |
Obiekt jest obcięty lub przewijany z widoku, ale nie jest on programowo ukryty. Jeśli użytkownik powiększy okno wyświetlania, więcej obiektu będzie widocznych na ekranie komputera. |
STATE_SYSTEM_PRESSED 0x8 |
Obiekt jest naciskany. |
STATE_SYSTEM_PROTECTED 0x20000000 |
Obiekt jest kontrolką edycji chronioną hasłem. |
STATE_SYSTEM_READONLY 0x40 |
Obiekt jest wyznaczony tylko do odczytu. |
STATE_SYSTEM_SELECTABLE 0x200000 |
Obiekt akceptuje zaznaczenie. |
STATE_SYSTEM_SELECTED 0x2 |
Obiekt jest zaznaczony. |
STATE_SYSTEM_SELFVOICING 0x80000 |
Obiekt lub element podrzędny używa technologii zamiany tekstu na mowę (TTS) do celów opisu. Gdy obiekt o tym stanie ma fokus, pomoc ułatwień dostępu oparta na mowie nie ogłasza informacji, ponieważ obiekt automatycznie go ogłasza. |
STATE_SYSTEM_SIZEABLE 0x20000 |
Rozmiar obiektu można zmienić. Na przykład użytkownik może zmienić rozmiar okna, przeciągając go przez obramowanie. |
STATE_SYSTEM_TRAVERSED 0x800000 |
Obiekt jest hiperlinkiem, który został odwiedzony (wcześniej kliknięta) przez użytkownika. |
STATE_SYSTEM_UNAVAILABLE 0x1 |
Obiekt jest niedostępny. |
Wymagania
Wymaganie | Wartość |
---|---|
Nagłówek |
Oleacc.h |