De WS_GROUP stijl

Standaard verplaatst het systeem de invoerfocus naar het volgende of vorige besturingselement wanneer de gebruiker op een richting drukt. Zolang het huidige besturingselement de invoerfocus met deze sleutels niet verwerkt en het volgende of vorige besturingselement niet een statische is, blijft het systeem input focus door alle besturingselementen in het dialoogvenster verplaatsen als de gebruiker heeft nog steeds druk op de pijltjestoetsen.

Een toepassing kan de WS_GROUP stijl gebruiken om deze standaardwerking te wijzigen. De stijl markeert het begin van een groep besturingselementen. Als een besturingselement in de groep de invoerfocus heeft wanneer de gebruiker begint op richtingstoetsen te drukken, blijft de focus in de groep. In het algemeen, moet het eerste besturingselement in een groep de WS_GROUP stijl hebben en alle andere besturingselementen in de groep moeten niet hebben deze stijl. Alle besturingselementen in de groep moet aaneengesloten dat wil zeggen, zij moeten zijn gemaakt na elkaar met geen tussenliggende besturingselementen.

Wanneer de gebruiker op een richting drukt, bepaalt het systeem eerst of het huidige besturingselement de invoerfocus hebben verwerkt de richtingstoetsen. Het systeem stuurt een WM_GETDLGCODE -bericht naar het besturingselement en als het besturingselement de waarde DLGC_WANTARROWS retourneert, geeft de sleutel aan het besturingselement. Anders, het systeem de GetNextDlgGroupItem functie gebruikt om te bepalen van het volgende besturingselement in de groep.

GetNextDlgGroupItem zoekt besturingselementen in de order (of omgekeerde volgorde) ze zijn gemaakt. Als de gebruiker het recht op drukt of ingedrukt, GetNextDlgGroupItem het volgende besturingselement retourneert als dat besturingselement doet niet WS_GROUP stijl hebben. Anders, de functie keert de volgorde van de zoekopdracht en het eerste besturingselement de WS_GROUP stijl heeft als resultaat. Als de gebruiker op de links of omhoog ingedrukt, retourneert de functie het vorige besturingselement, tenzij het huidige besturingselement al de WS_GROUP stijl. Als het huidige besturingselement deze stijl heeft, de functie keert de volgorde van de zoekopdracht zoekt naar het eerste besturingselement de WS_GROUP stijl hebben en geeft als resultaat het besturingselement die onmiddellijk voorafgaat aan de gelegen controle.

Zodra het systeem het volgende of het vorige besturingselement heeft, stuurt het een WM_GETDLGCODE-bericht naar het besturingselement om het besturingselementtype. De invoerfocus verplaatst het systeem vervolgens naar besturingselement als het is niet een statische besturingselement. Als het besturingselement een automatische radio knop is, stuurt het systeem een BM_CLICK -bericht naar het. Een toepassing kan ook GetNextDlgGroupItem gebruiken om te zoeken van besturingselementen in een groep.

In het algemeen, het eerste besturingselement in de groep combineert de WS_GROUP en WS_TABSTOP stijlen zodat de gebruiker van groep naar groep verplaatsen kan met behulp van de tab-toets. Als de groep keuzerondjes bevat, moet de toepassing de WS_TABSTOP stijl gelden alleen voor het eerste besturingselement in de groep. De stijl verplaatst het systeem automatisch wanneer de gebruiker tussen besturingselementen in de groep beweegt. Dit zorgt ervoor dat de invoerfocus zal altijd op het meest recent geselecteerde besturingselement wanneer de gebruiker wordt verplaatst naar de groep met de tab-toets.

Index