Styl WS_GROUP

Domyślnie system przenosi fokus do następnego lub poprzedniego formantu, zawsze, gdy użytkownik naciśnie klawisz kierunku. Tak długo, jak bieżącego formantu z fokus nie przetwarza te klucze i następny lub Poprzedni formant nie jest formantem statyczne, system będzie kontynuował przenieść fokus do wszystkich formantów w oknie dialogowym jako użytkownik nadal do naciskania klawiszy kierunkowych.

Aplikację można użyć stylu WS_GROUP, aby zmodyfikować to domyślne zachowanie. Styl znaków na początku grupę formantów. Jeśli formant w grupie ma fokus, gdy użytkownik rozpocznie się, naciśnięcie klawiszy kierunkowych, fokus pozostaje w grupie. Ogólnie, pierwszy formant w grupie musi mieć styl WS_GROUP i inne formanty w grupie musi nie mają tego stylu. Wszystkie formanty w grupie musi być ciągły — oznacza to, że oni muszą zostały utworzone kolejno z bez interwencji kontroli.

Gdy użytkownik naciśnie klawisz kierunku, system najpierw określa, czy bieżącego formantu posiadające fokus przetwarza klawiszy kierunkowych. System wysyła wiadomość WM_GETDLGCODE do sterowania i kontroli zwraca wartość DLGC_WANTARROWS, przekazuje klucz do kontroli. W przeciwnym razie system używa funkcji GetNextDlgGroupItem do określenia następny formant w grupie.

GetNextDlgGroupItem szuka formantów w kolejności (lub odwrotnej kolejności), które zostały utworzone. Jeśli użytkownik naciśnie prawo lub klawisz, GetNextDlgGroupItem zwraca następnego formantu, jeśli ten formant nie ma styl WS_GROUP. W przeciwnym wypadku funkcja Odwraca kolejność przeszukiwania i zwraca pierwszy formant, który ma styl WS_GROUP. Jeśli użytkownik naciśnie się po lewej stronie lub klucz, funkcja zwraca poprzedniego formantu, chyba że bieżącego formantu ma już styl WS_GROUP. Jeśli bieżący formant ma ten styl, funkcja Odwraca kolejność przeszukiwania, lokalizuje pierwszy formant o stylu WS_GROUP i sterowanie, bezpośrednio poprzedzający znajduje się formant.

Gdy system ma kontrolę następny lub poprzedni, wysyła komunikat WM_GETDLGCODE do formantu, aby określić typ formantu. System przenosi fokus do formantu jeśli nie jest formantem statyczne. Jeśli formant jest automatyczne przycisków, system wysyła komunikat BM_CLICK do niego. Aplikację można również używać GetNextDlgGroupItem do Zlokalizuj regulatory w grupie.

Ogólnie rzecz biorąc pierwszego formantu w grupie łączy style WS_GROUP i WS_TABSTOP, tak, aby użytkownik może przechodzić od grupa za pomocą klawisza tab. Jeśli grupa zawiera przyciski radiowe, aplikacja powinna zastosować styl WS_TABSTOP tylko do pierwszego formantu w grupie. System automatycznie przenosi styl, gdy użytkownik przesuwa między formantami w grupie. Gwarantuje to, że fokus zawsze będzie na ostatnio zaznaczonego formantu, gdy użytkownik przesuwa się do grupy za pomocą klawisza tab.

Index