Gombtípusok
Többféle gomb és egy vagy több gombstílus létezik az azonos típusú gombok megkülönböztetéséhez.
Ez a dokumentum a következő témaköröket ismerteti.
- gombtípusok és stílusok
- jelölőnégyzetek
- csoportmezők
- leküldéses gombok
- választógombok
- Kapcsolódó témakörök
Gombtípusok és stílusok
A gombok egy típushoz tartoznak, és további stílusokkal is rendelkezhetnek, amelyek befolyásolják annak megjelenését és viselkedését. A gombstílusok táblázatát a Gombstílusokcímű témakörben talál.
Az alábbi képernyőképen a különböző típusú gombok láthatók.
A képernyőfelvételen látható, hogyan jelenhetnek meg a gombok a Windows Vista rendszerben. A megjelenés az operációs rendszer különböző verzióiban és a felhasználó által beállított téma szerint változik.
Jegyezze fel a következő pontokat az ábrán:
- A háromállapotú jelölőnégyzet meghatározatlan állapotban jelenik meg. Ha be van jelölve vagy nincs bejelölve, az egy normál jelölőnégyzetnek tűnik.
- A nagyméretű leküldéses gomb programozott módon lett beállítva a leküldéses állapotra (a BM_SETSTATE üzenet elküldésével), így akkor is megtartja a megjelenését, ha nem kattint rá.
- A megjelenített vizuális stílusban az alapértelmezett leküldéses gomb (vagy egy másik, a bemeneti fókuszt tartalmazó leküldéses gomb) háttere kék és szürke között vált.
Jelölőnégyzeteket
A jelölőnégyzet négyzetből és alkalmazás által definiált címkéből, ikonból vagy bitképből áll, amely azt jelzi, hogy a felhasználó a gomb kiválasztásával választhat. Az alkalmazások általában jelölőnégyzeteket jelenítenek meg, amelyek lehetővé teszik a felhasználó számára, hogy egy vagy több olyan lehetőséget válasszon, amely nem zárja ki egymást.
A jelölőnégyzet négy stílus egyike lehet: standard, automatikus, háromállapotú és automatikus háromállapotú, a BS_CHECKBOX, BS_AUTOCHECKBOX, BS_3STATEés BS_AUTO3STATEállandók által meghatározottak szerint. Minden stílus két állapotot feltételezhet: bejelölve (pipa a mezőben) vagy törölve (nincs pipa). Emellett a háromállapotú jelölőnégyzetek meghatározhatatlan állapotot (a jelölőnégyzeten belüli árnyékolt jelölőnégyzetet) is feltételezhetnek, ami azt jelezheti, hogy a felhasználó nem választott. Ha többször kattint egy szabványos vagy automatikus jelölőnégyzetre, a jelölőnégyzet bejelölve lesz, és ismét törlődik. Ha többször kattint egy háromállapotú jelölőnégyzetre, az kikapcsolja a jelölőnégyzetet a bejelölt állapotból a határozatlan állapotba, majd megismétli a ciklust.
Ha a felhasználó egy (bármilyen stílusú) jelölőnégyzetre kattint, a jelölőnégyzet megkapja a billentyűzet fókuszát. A rendszer egy WM_COMMAND üzenetet küld a jelölőnégyzet szülőablakának, amely tartalmazza a BN_CLICKED értesítési kódot. A szülőablaknak nem kell kezelnie ezt az üzenetet, ha automatikus jelölőnégyzetből vagy automatikus háromállapotú jelölőnégyzetből származik, mert a rendszer automatikusan beállítja az adott stílusok ellenőrzési állapotát. A szülőablaknak azonban kezelnie kell az üzenetet, ha az nem automatikus jelölőnégyzetből vagy háromállapotú jelölőnégyzetből származik, mert a szülőablak felelős a stílusok állapotának beállításáért. A jelölőnégyzet stílusától függetlenül a rendszer az állapot módosítása után automatikusan újrafesti a jelölőnégyzetet.
Az alkalmazás az IsDlgButtonChecked függvénnyel állapíthatja meg a jelölőnégyzet állapotát.
Csoportmezők
A csoportmezők egy olyan téglalap, amely egy vezérlőket, például jelölőnégyzeteket vagy választógombokat vesz körül egy alkalmazás által definiált szövegfelirattal a bal felső sarokban. A csoportmezők egyetlen célja a közös célú vezérlők rendszerezése (általában a címkével jelölve). A csoportmező csak egy stílussal rendelkezik, amelyet az állandó BS_GROUPBOXhatároz meg. Mivel egy csoportmező nem jelölhető ki, nincs ellenőrző állapota, fókuszállapota vagy leküldési állapota.
Leküldéses gombok
A leküldéses gomb egy téglalap, amely alkalmazás által definiált szövegcímkét, ikont vagy bitképet tartalmaz, amely jelzi, hogy a gomb mit csinál, amikor a felhasználó kiválasztja.
A leküldéses gomb a BS_PUSHBUTTON és a BS_DEFPUSHBUTTONkonstansok által meghatározott két stílus egyike lehet. A szokásos leküldéses gombot általában egy művelet elindításához használják. Amikor a felhasználó rá kattint, megkapja a billentyűzetfókuszt. Az alapértelmezett leküldéses gomb általában a leggyakoribb vagy az alapértelmezett választás jelzésére szolgál, például a párbeszédpanel bezárására. Ez egy gomb, amelyet a felhasználó az ENTER billentyűt lenyomva választhat, ha a párbeszédpanelen nincs más leküldéses gomb a bemeneti fókuszban.
Amikor a felhasználó egy leküldéses gombra kattint, megkapja a billentyűzet fókuszát. A rendszer egy WM_COMMAND üzenetet küld a gomb szülőablakának, amely tartalmazza a BN_CLICKED értesítési kódot.
A osztott gomb a Windows Vista és 6.00-sverziójában bevezetett speciális leküldéses gomb. Az osztott gomb két részre van osztva. A fő rész normál vagy alapértelmezett leküldéses gombként működik. A második rész lefelé mutató nyíllal rendelkezik. Általában egy menü jelenik meg, amikor a nyílra kattint.
Az osztott gomb BS_SPLITBUTTON stílussal rendelkezik, vagy ha a párbeszédpanelen ez az alapértelmezett gomb, akkor a BS_DEFSPLITBUTTON stílust. A gomb megjelenését a BCM_SETSPLITINFO üzenet vagy a megfelelő Button_SetSplitInfo makró használatával módosíthatja.
Amikor a felhasználó a felosztás gomb fő részére kattint, egy BN_CLICKED értesítést küld, csakúgy, mint egy normál leküldéses gomb. Amikor azonban a felhasználó a lefelé mutató nyílra kattint, BCN_DROPDOWN értesítést küld. Az alkalmazás felelőssége, hogy egy menüt jelenítsen meg a BCN_DROPDOWN válaszában.
Windows Vista és 6.00-s verzió is bevezetett egy másik típusú leküldéses gombot, a parancs hivatkozását. Vizuálisan a parancshivatkozások nagyon különböznek a normál leküldéses gomboktól, de ugyanazokkal a funkciókkal rendelkezik. A parancshivatkozások általában egy nyíl ikont, egy szövegsort és egy további szöveget jelenítenek meg kisebb betűtípussal.
Választógombokkal
A választógomb (más néven választógomb) egy kerek gombból és egy alkalmazás által definiált címkéből, ikonból vagy bitképből áll, amely azt jelzi, hogy a felhasználó a gomb kiválasztásával választhat. Az alkalmazások általában egy csoportmezőben lévő választógombokkal teszik lehetővé a felhasználó számára a kapcsolódó, de kölcsönösen kizáró lehetőségek egyikének kiválasztását.
A választógombok két stílus egyike lehetnek: standard vagy automatikus, a BS_RADIOBUTTON és BS_AUTORADIOBUTTONstílusállandók által meghatározottak szerint. Minden stílus két ellenőrzési állapotot feltételezhet: bejelölve (egy pont a gombon) vagy törölve (nincs pont a gombban).
Amikor a felhasználó bármelyik állapotot kiválasztja, a választógomb megkapja a billentyűzet fókuszát. A rendszer egy WM_COMMAND üzenetet küld a gomb szülőablakának, amely tartalmazza a BN_CLICKED értesítési kódot. A szülőablaknak nem kell kezelnie ezt az üzenetet, ha az automatikus választógombból származik, mert a rendszer automatikusan beállítja az adott stílus ellenőrzési állapotát. A szülőablaknak azonban kezelnie kell az üzenetet, ha az nem automatikus választógombból származik, mert a szülőablak felel az adott stílus állapotának beállításáért. A választógomb stílusától függetlenül a rendszer automatikusan újrafesti a gombot az állapot változásakor.
A választógombok csoportokba vannak rendezve, és a csoportnak csak egy gombja ellenőrizhető bármikor. Ha a WS_GROUP jelölő bármely választógombhoz be van állítva, az a csoport első gombja, és az azt követő összes gomb közvetlenül a tabulátorsorrendben (de nem rendelkezik a WS_GROUP jelölővel) a csoport része. Ha egyetlen választógomb sem rendelkezik a WS_GROUP jelzővel, a párbeszédpanel összes választógombja egyetlen csoportként lesz kezelve.
Az alkalmazás az IsDlgButtonChecked függvénnyel ellenőrizheti, hogy a választógombot ellenőrzi-e.
Kapcsolódó témakörök
-
referencia
-
fogalmi