Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A felfelé mutató vezérlőelemek olyan nyílgombok, amelyekre a felhasználó rákattinthat egy érték növeléséhez vagy csökkenéséhez, például egy görgetési pozícióhoz vagy egy társvezérlőben megjelenített számhoz (más néven pajtásablakhoz).
A felhasználó számára a fel-le vezérlő és a párosított ablak gyakran egyetlen vezérlőnek tűnik. Megadhatja, hogy egy fel-le vezérlő automatikusan elhelyezze magát a társ ablak mellett, és automatikusan állítsa a társ ablak feliratát az aktuális pozícióra. Használhat például egy felfelé irányuló vezérlőt szerkesztési vezérlővel, amellyel numerikus bemenetet kér a felhasználótól. Az alábbi ábrán egy fel-le léptetővezérlő látható, amelynek a szerkesztő vezérlő a párosított ablak, egy olyan kombináció, amelyet néha tárcsavezérlőnek is neveznek.
Ebben a szakaszban az alábbi témaköröket tárgyaljuk.
- Up-Down Vezérlési stílusok
- pozíció és gyorsulás
- üzenetek feldolgozását vezérlő alapértelmezett Up-Down
Up-Down vezérlőstílusok
Az ablakstílusok használatával módosíthatja a felfelé mutató vezérlőelemek jellemzőit, például azt, hogy hogyan helyezi el magát a haver ablakához képest, beállítja-e a haver ablakának szövegét, és feldolgozza-e a FEL és a LE nyílbillentyűket.
A UDS_ALIGNLEFT vagy UDS_ALIGNRIGHT stílust tartalmazó fel-le ható vezérlő a kísérő ablak bal vagy jobb széléhez igazodik. A pajtás ablakának szélessége csökken a le-le vezérlő szélességének megfelelően.
A UDS_SETBUDDYINT stílust tartalmazó fel-le vezérlőelem mindig beállítja a társablak címkéjét, amikor az aktuális pozíció megváltozik. A vezérlőelem egy tizedesjegy minden három számjegye közé beszúr egy ezres elválasztójelet, kivéve, ha a UDS_NOTHOUSANDS stílus meg van adva. Ha a társ ablak egy listamező, akkor a fel-le nyíl vezérlő az aktuális kijelölést állítja be a felirat helyett.
Megadhatja a UDS_ARROWKEYS stílust, hogy billentyűzetfelületet biztosítson egy lefelé irányuló vezérlőhöz. Ha ez a stílus meg van adva, a vezérlő feldolgozza a fel- és le nyílbillentyűket. A vezérlő a páros ablakot is alosztályozza, hogy feldolgozhassa ezeket a gombokat, amikor a páros ablak van fókuszban.
Ha lefelé irányuló vezérlőelemet használ a vízszintes görgetéshez, megadhatja a UDS_HORZ stílust. Ez a stílus azt eredményezi, hogy a felfelé mutató vezérlő nyilak a felfelé és lefelé mutató nyilak helyett balra és jobbra mutatnak.
Alapértelmezés szerint az aktuális pozíció nem változik, ha a felhasználó megkísérli növelni vagy csökkenteni azt a maximális vagy minimális értéknél. Ezt a viselkedést a UDS_WRAP stílussal módosíthatja, így a pozíció az ellenkező végletre átlép. Ha például túllépi a felső korlátot, visszaállítja a pozíciót az alsó korlátra.
Pozíció és gyorsulás
A felfelé felfelé vezérlő létrehozása után üzenetek küldésével módosíthatja a vezérlő aktuális pozícióját, minimális pozícióját és maximális pozícióját. Módosíthatja azt a radixbázist is, amellyel megjelenítheti az aktuális pozíciót a pajtásablakban, valamint azt, hogy az aktuális pozíció milyen sebességgel változik, amikor a felfelé vagy lefelé mutató nyílra kattint.
Ha le szeretné kérni egy felfelé felfelé vezérlő aktuális pozícióját, használja a UDM_GETPOS üzenetet. Olyan fel-le vezérlők esetében, amelyek tartalmaznak egy társablakot, az aktuális pozíció a társablak feliratában található szám. Mivel a felirat módosulhatott (például a felhasználó szerkesztette egy szerkesztési vezérlő szövegét), a lefelé irányuló vezérlő lekéri az aktuális feliratot, és ennek megfelelően frissíti az aktuális pozícióját.
A pajtásablak felirata lehet decimális vagy hexadecimális betűsor attól függően, hogy a számnövelő és -csökkentő vezérlőelem rádixbázisa 10-es vagy 16-os alapú. A radix alap beállításához használja a UDM_SETBASE üzenetet, és kérje le a radix bázist a UDM_GETBASE üzenet használatával.
A UDM_SETPOS üzenet beállítja a társkapcsolati ablak aktuális pozícióját. Vegye figyelembe, hogy a görgetősávtól eltérően a lefelé mutató vezérlőelemek automatikusan megváltoztatják az aktuális pozíciót, amikor a fel- és le nyílra kattintanak. Az alkalmazásoknak ezért nem kell beállítaniuk az aktuális pozíciót a WM_VSCROLL vagy WM_HSCROLL üzenet feldolgozásakor.
Az UDM_SETRANGE üzenet használatával módosíthatja a le-le vezérlőelemek minimális és maximális pozícióját. A maximális pozíció kisebb lehet a minimálisnál, és ebben az esetben a felfelé mutató nyíl gombra kattintva csökkenti az aktuális pozíciót. Másképpen fogalmazva, a felfelé azt jelenti, hogy a maximális pozíció felé haladunk. A lefelé irányuló vezérlőelemek minimális és maximális pozíciójának lekéréséhez használja a UDM_GETRANGE üzenetet.
A felfelé mutató vezérlő gyorsulásának beállításával szabályozhatja, hogy a pozíció milyen sebességgel változik, amikor a felhasználó lenyom egy nyílgombot. A gyorsulást UDACCEL struktúrák tömbje határozza meg. Minden struktúra meghatározza az időintervallumot és az egységek számát, amellyel az intervallum végén növekményt vagy csökkenést kell végezni. A gyorsítás beállításához használja a UDM_SETACCEL üzenetet. A gyorsítási információk lekéréséhez használja a UDM_GETACCEL üzenetet.
Az üzenetek feldolgozását vezérlő alapértelmezett Up-Down
Ez a szakasz azokat a Windows-üzeneteket ismerteti, amelyeket egy felfelé felfelé vezérlő dolgoz fel.
| Üzenet | Elvégzett feldolgozás |
|---|---|
| WM_CREATE | Lefoglalja és inicializálja a privát adatstruktúrát, és annak címét ablakhoz kapcsolódó adatként menti. |
| WM_DESTROY | Felszabadítja WM_CREATE feldolgozás során lefoglalt adatokat. |
| WM_ENABLE | Érvényteleníti az ablakot. |
| WM_KEYDOWN | A FEL vagy a LE nyílbillentyű esetén módosítja az aktuális pozíciót. |
| WM_KEYUP | Befejezi a pozícióváltoztatást. |
| WM_LBUTTONDOWN | Rögzíti az egeret. Ha a társított ablak szerkesztőmező vagy listamező, akkor a fókusz a társított ablakra kerül. Ha az egér a fel- vagy le gomb felett van, elkezdi módosítani a pozíciót, és beállít egy időzítőt. |
| WM_LBUTTONUP | Befejezi a pozícióváltoztatást, és felszabadítja az egérrögzítést, ha a felfelé mutató vezérlő rögzítette az egeret. Ha a kísérőablak szerkesztőmező, akkor kijelöli a szerkesztőmezőben lévő összes szöveget. |
| WM_PAINT | A fel-le vezérlőt festi. Ha a wParam paraméter nem NULL, a vezérlő feltételezi, hogy az érték egy HDC, és azzal az eszközkörnyezettel fest. |
| WM_TIMER | Módosítja az aktuális pozíciót, ha az egér egy gomb fölött van lenyomva, és a megfelelő időköz eltelt. |