1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3 4<head> 5<title>Windows Interface Reference: Scrollbar structure</title> 6</head> 7 8<body> 9 10<h1>Scrollbar </h1> 11 12<p>The Scrollbar structure contains functions and styles for scroll bars and functions to 13scroll windows.</p> 14 15<pre>structure Scrollbar: 16sig 17 type HWND and HDC and HRGN 18 type RECT = { left: int, top: int, right: int, bottom: int } 19 20 structure Style: 21 sig 22 include BIT_FLAGS where type flags = Window.Style.flags 23 val WS_OVERLAPPED: flags and WS_POPUP: flags and WS_CHILD: flags and WS_MINIMIZE: flags 24 and WS_VISIBLE: flags and WS_DISABLED:flags and WS_CLIPSIBLINGS:flags 25 and WS_CLIPCHILDREN:flags and WS_MAXIMIZE:flags and WS_CAPTION:flags 26 and WS_BORDER:flags and WS_DLGFRAME:flags and WS_VSCROLL:flags and WS_HSCROLL:flags 27 and WS_SYSMENU:flags and WS_THICKFRAME:flags and WS_GROUP:flags and WS_TABSTOP:flags 28 and WS_MINIMIZEBOX:flags and WS_MAXIMIZEBOX:flags and WS_TILED:flags and WS_ICONIC:flags 29 and WS_SIZEBOX:flags and WS_OVERLAPPEDWINDOW:flags and WS_TILEDWINDOW:flags 30 and WS_POPUPWINDOW:flags and WS_CHILDWINDOW:flags 31 and SBS_HORZ:flags and SBS_VERT:flags and SBS_TOPALIGN:flags and SBS_LEFTALIGN:flags 32 and SBS_BOTTOMALIGN:flags and SBS_RIGHTALIGN:flags and SBS_SIZEBOXTOPLEFTALIGN:flags 33 and SBS_SIZEBOXBOTTOMRIGHTALIGN:flags and SBS_SIZEBOX:flags and SBS_SIZEGRIP:flags 34 end 35 36 type enableArrows = { enableLeftUp: bool, enableRightDown: bool } 37 38 val ESB_ENABLE_BOTH: enableArrows 39 val ESB_DISABLE_BOTH: enableArrows 40 val ESB_DISABLE_LEFT: enableArrows 41 val ESB_DISABLE_RIGHT: enableArrows 42 val ESB_DISABLE_UP: enableArrows 43 val ESB_DISABLE_DOWN: enableArrows 44 45 type SCROLLINFO = 46 { minPos: int, maxPos: int, pageSize: int, pos: int, trackPos: int } 47 48 datatype ScrollInfoOption = 49 SIF_RANGE | SIF_PAGE | SIF_POS | SIF_DISABLENOSCROLL | SIF_TRACKPOS 50 51 val SIF_ALL : ScrollInfoOption list 52 53 datatype ScrollBarType = SB_BOTH | SB_CTL | SB_HORZ | SB_VERT 54 datatype ScrollWindowFlag = SW_ERASE | SW_INVALIDATE | SW_SCROLLCHILDREN 55 56 val EnableScrollBar : HWND * ScrollBarType * enableArrows -> unit 57 val GetScrollInfo : HWND * ScrollBarType * ScrollInfoOption list -> SCROLLINFO 58 val GetScrollPos : HWND * ScrollBarType -> int 59 val ScrollDC : HDC * int * int * RECT * RECT * HRGN -> RECT 60 val ScrollWindow : HWND * int * int * RECT * RECT -> unit 61 val ScrollWindowEx : HWND * int * int * RECT * RECT * HRGN * ScrollWindowFlag list -> RECT 62 val SetScrollInfo : 63 HWND * ScrollBarType * ScrollInfoOption list * SCROLLINFO * bool -> int 64 val SetScrollPos : HWND * ScrollBarType * int * bool -> int 65 val SetScrollRange : HWND * ScrollBarType * int * int * bool -> bool 66 val ShowScrollBar : HWND * ScrollBarType * bool -> unit 67end 68=</pre> 69</body> 70</html> 71