Osztály cscrollview
Függetlenül kezelheti a standard görgetést minden CView-ből származó osztályban az OnHScroll üzenetfunkciói és a leképezett OnVScroll felülírása révén. A CScrollView azonban CView képességekkel kiegészíti a következő funkciókat.
Automatikusan a görgetősáv-üzenetekre reagálva mozog.
Automatikusan a billentyűzetről érkező üzenetekre válaszul, mint a görgetés vagy az egér kerék IntelliMouse.
Automatikus görgetés válaszként a billentyűzetről érkező üzenetekre, hozzáadhat egy WM_KEYDOWN üzenetet és tesztelheti a VK_DOWN, VK_PREV és a SetScrollPos hívását.
Függetlenül kezelheti az egér görgő görgetését az OnMouseWheel üzenet-tag funkcióinak újradefiniálásával és az OnRegisteredMouseWheel-re történő leképezésre. Mivel támogatják az ilyen tagfunkciókat a CScrollView számára. a WM_MOUSEWHEEL üzenet javasolt funkcióbővítménye a kerék forgása.
Az automatikus görgetés kihasználásához örökli meg az osztályt a CScrollView nézetből, és nem a CView-ből. Ha egy nézet először létre, ha azt szeretnénk, hogy kiszámítja a méret a görgethető nézetek alapján a dokumentum méretét, hívja a tagfüggvény SetScrollSizes döntő vagy CView :: OnInitialUpdate vagy CView :: OnUpdate. (Meg kell adnia a saját kódját a dokumentum méretének megkereséséhez. Például lásd a Scribble Sample-t).
A member funkcióhoz tartozó hívás A SetScrollSizes beállítja a görgetési nézet teljes nézetének leképezési módját, és a vízszintes és függőleges görgetést. Minden méret logikai egységben van. A nézet logikai mérete általában a dokumentumban tárolt adatok alapján kerül kiszámításra, de egyes esetekben szükség lehet egy fix méret meghatározására. Mindkét megközelítés példáit lásd: CScrollView :: SetScrollSizes.
Adjon meg egy számot a vízszintes és függőleges görgetéshez logikai egységekben. Alapértelmezés szerint ha a felhasználó a görgetősávon kívüli csúszkán kívül rákattint az alap "görgetősávra", a CScrollView görgeti az "oldalt". Ha a felhasználó megnyomja a görgetőgombot bármelyik görgetősáv elemen, a CScrollView görgeti a "sort". Az alapértelmezett oldal a teljes méretű nézet 1/10-e; az oldal mérete 1/10-e. Az alapértelmezett értékek felülbírálása az Egyéni méret megadása a SetScrollSizes tag funkcióban. Például beállíthatja a vízszintes dimenziót a teljes méret, szélesség és függőleges vonal egy részében az aktuális betűmagasságban.
A görgetés helyett a CScrollView automatikusan átméretezi a nézetet az aktuális ablakmérettel. Ebben a módban a nézet nem tartalmaz görgetősávot, és a logikai ábrázolást a készülék megnyújtja vagy tömöríti, hogy megkapja az ablak ügyfélfelületét. Használja ezt a skálázási egyezés funkciót, hívja a CScrollView :: SetScaleToFitSize alkalmazást. (Vagy SetScaleToFitSize vagy Call SetScrollSizes, de nem mindkettő).
A görbe sávok a nézethez képest három elrendezésben jelennek meg, a következő esetekben:
A stílusablak szabványos görgetősávjai beállíthatók úgy, hogy a WS_HSCROLL és a WS_VSCROLL a Windows-stílusokat képviseljék.