SIF_...
-
Hi Leute
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { static int cxChar, cxCaps, cyChar, cxClient, cyClient, iMaxWidth ; HDC hdc ; int i, x, y, iVertPos, iHorzPos, iPaintBeg, iPaintEnd ; PAINTSTRUCT ps ; SCROLLINFO si ; TCHAR szBuffer[10] ; TEXTMETRIC tm ; ... case WM_SIZE: cxClient = LOWORD (lParam) ; cyClient = HIWORD (lParam) ; // Bereich und Seitengröße der vertikalen Bildlaufleiste si.cbSize = sizeof (si) ; si.fMask = SIF_RANGE | SIF_PAGE | SIF_PAGE | SIF_TRACKPOS ; si.nMin = 0 ; si.nMax = NUMLINES - 1 ; si.nPage = cyClient / cyChar ; SetScrollInfo (hwnd, SB_VERT, &si, TRUE) ; .....Kann mir jmd sagen für was diese SIF_RANGE, SIF_PAGE, SIF_PAGE und SIF_TRACKPOS stehen?! bis jetzt weis ich nur das diese begriffe für felder oder so stehen Kann mir das jmd genauer erläutern?
Albert
-
-
ich hof ich hab des einigermasen verstanden...
Danke sollte ich noch fragen haben werd ich sie posten
-
case WM_PAINT : hdc = BeginPaint (hwnd, &ps) ; si.cbSize = sizeof (si) ; si.fMask = SIF_POS ; GetScrollInfo (hwnd, SB_VERT, &si) ; iVertPos = si.nPos ; GetScrollInfo (hwnd, SB_HORZ, &si) ; iHorzPos = si.nPos ; iPaintBeg = max (0, iVertPos + ps.rcPaint.top / cyChar) ; iPaintEnd = min (NUMLINES - 1, iVertPos + ps.rcPaint.bottom / cyChar) ;Kann mir jemand die letzten beiden zeilen erklähren?
iPaintBeg = max (0, iVertPos + ps.rcPaint.top / cyChar) ; iPaintEnd = min (NUMLINES - 1, iVertPos + ps.rcPaint.bottom / cyChar) ;