' api_commctrl.sbp #ifndef _INC_COMMCTRL #define _INC_COMMCTRL #ifdef UNICODE Const _FuncName_CreateStatusWindow = "CreateStatusWindowW" #else Const _FuncName_CreateStatusWindow = "CreateStatusWindowA" #endif '--------------------- ' Initialize commands '--------------------- Const ICC_LISTVIEW_CLASSES = &H00000001 Const ICC_TREEVIEW_CLASSES = &H00000002 Const ICC_BAR_CLASSES = &H00000004 Const ICC_TAB_CLASSES = &H00000008 Const ICC_UPDOWN_CLASS = &H00000010 Const ICC_PROGRESS_CLASS = &H00000020 Const ICC_HOTKEY_CLASS = &H00000040 Const ICC_ANIMATE_CLASS = &H00000080 Const ICC_WIN95_CLASSES = &H000000FF Const ICC_DATE_CLASSES = &H00000100 Const ICC_USEREX_CLASSES = &H00000200 Const ICC_COOL_CLASSES = &H00000400 Const ICC_INTERNET_CLASSES = &H00000800 Const ICC_PAGESCROLLER_CLASS = &H00001000 Const ICC_NATIVEFNTCTL_CLASS = &H00002000 Type INITCOMMONCONTROLSEX dwSize As DWord dwICC As DWord End Type Declare Function InitCommonControlsEx Lib "comctl32" (ByRef InitCtrls As INITCOMMONCONTROLSEX) As BOOL Declare Sub InitCommonControls Lib "comctl32" () '---------------------------- ' Common control shared item '---------------------------- Const CCS_TOP = &H00000001 Const CCS_NOMOVEY = &H00000002 Const CCS_BOTTOM = &H00000003 Const CCS_NORESIZE = &H00000004 Const CCS_NOPARENTALIGN = &H00000008 Const CCS_ADJUSTABLE = &H00000020 Const CCS_NODIVIDER = &H00000040 Const CCS_VERT = &H00000080 Const CCS_LEFT = CCS_VERT or CCS_TOP Const CCS_RIGHT = CCS_VERT or CCS_BOTTOM Const CCS_NOMOVEX = CCS_VERT or CCS_NOMOVEY Const CCM_FIRST = &H2000 Const CCM_SETBKCOLOR = CCM_FIRST+1 Const CCM_SETCOLORSCHEME = CCM_FIRST+2 Const CCM_GETCOLORSCHEME = CCM_FIRST+3 Const CCM_GETDROPTARGET = CCM_FIRST+4 Const CCM_SETUNICODEFORMAT = CCM_FIRST+5 Const CCM_GETUNICODEFORMAT = CCM_FIRST+6 Type NMHDR hwndFrom As HWND idFrom As ULONG_PTR code As DWord End Type Const NM_FIRST = 0 Const NM_OUTOFMEMORY = NM_FIRST-1 Const NM_CLICK = NM_FIRST-2 Const NM_DBLCLK = NM_FIRST-3 Const NM_RETURN = NM_FIRST-4 Const NM_RCLICK = NM_FIRST-5 Const NM_RDBLCLK = NM_FIRST-6 Const NM_SETFOCUS = NM_FIRST-7 Const NM_KILLFOCUS = NM_FIRST-8 Const NM_CUSTOMDRAW = NM_FIRST-12 Const NM_HOVER = NM_FIRST-13 Const NM_NCHITTEST = NM_FIRST-14 Const NM_KEYDOWN = NM_FIRST-15 Const NM_RELEASEDCAPTURE = NM_FIRST-16 Const NM_SETCURSOR = NM_FIRST-17 Const NM_CHAR = NM_FIRST-18 '----------- ' ImageList '----------- Type _System_DeclareHandle_HIMAGELIST:unused As DWord:End Type TypeDef HIMAGELIST = *_System_DeclareHandle_HIMAGELIST Declare Function ImageList_AddIcon Lib "comctl32" (himl As HIMAGELIST, hIcon As HICON) As Long Const ILC_MASK = &H0001 Const ILC_COLOR = &H0000 Const ILC_COLORDDB = &H00FE Const ILC_COLOR4 = &H0004 Const ILC_COLOR8 = &H0008 Const ILC_COLOR16 = &H0010 Const ILC_COLOR24 = &H0018 Const ILC_COLOR32 = &H0020 Declare Function ImageList_Create Lib "comctl32" (cx As Long, cy As Long, flags As DWord, cInitial As Long, cGrow As Long) As HIMAGELIST Declare Function ImageList_Destroy Lib "comctl32" (himl As HIMAGELIST) As BOOL Declare Function ImageList_GetIcon Lib "comctl32" (himl As HIMAGELIST, index As Long, flags As DWord) As HICON Declare Function ImageList_GetImageCount Lib "comctl32" (himl As HIMAGELIST) As Long Declare Function ImageList_LoadImage Lib "comctl32" (hi As HINSTANCE, lpbmp As BytePtr, cx As Long, cGrow As Long, crMask As DWord, uType As DWord, uFlags As DWord) As HIMAGELIST '----------- ' ListView '----------- 'Column Const LVCF_FMT = &H0001 Const LVCF_WIDTH = &H0002 Const LVCF_TEXT = &H0004 Const LVCF_SUBITEM = &H0008 Const LVCF_IMAGE = &H0010 Const LVCF_ORDER = &H0020 Const LVCFMT_LEFT = &H0000 Const LVCFMT_RIGHT = &H0001 Const LVCFMT_CENTER = &H0002 Const LVCFMT_JUSTIFYMASK = &H0003 Const LVCFMT_IMAGE = &H0800 Const LVCFMT_BITMAP_ON_RIGHT = &H1000 Const LVCFMT_COL_HAS_IMAGES = &H8000 Type LVCOLUMN mask As DWord fmt As Long cx As Long pszText As LPSTR cchTextMax As Long iSubItem As Long iImage As Long iOrder As Long End Type TypeDef LPLVCOLUMN = *LVCOLUMN 'Find item Const LVFI_PARAM = &H0001 Const LVFI_STRING = &H0002 Const LVFI_PARTIAL = &H0008 Const LVFI_WRAP = &H0020 Const LVFI_NEARESTXY = &H0040 Type LVFINDINFO flags As DWord psz As LPSTR lParam As LPARAM pt As POINTAPI vkDirection As DWord End Type TypeDef LPLVFINDINFO = *LVFINDINFO 'Item Const LVIF_TEXT = &H0001 Const LVIF_IMAGE = &H0002 Const LVIF_PARAM = &H0004 Const LVIF_STATE = &H0008 Const LVIF_INDENT = &H0010 Const LVIF_NORECOMPUTE = &H0800 Const LVIF_DI_SETITEM = &H1000 Type LVITEM mask As DWord iItem As Long iSubItem As Long state As DWord stateMask As DWord pszText As LPSTR cchTextMax As Long iImage As Long lParam As LPARAM iIndent As Long End Type TypeDef LPLVITEM = *LVITEM Const LVM_FIRST = &H1000 'ListView messages Const LVM_GETBKCOLOR = LVM_FIRST+0 Const LVM_SETBKCOLOR = LVM_FIRST+1 Const LVSIL_NORMAL = 0 Const LVSIL_SMALL = 1 Const LVSIL_STATE = 2 Const LVM_GETIMAGELIST = LVM_FIRST+2 Const LVM_SETIMAGELIST = LVM_FIRST+3 Const LVM_GETITEMCOUNT = LVM_FIRST+4 Function ListView_GetItemCount(hwnd As HWND) As Long ListView_GetItemCount=SendMessage(hwnd,LVM_GETITEMCOUNT,0,0) As Long End Function Const LVM_GETITEM = LVM_FIRST+5 Const LVM_SETITEM = LVM_FIRST+6 Function ListView_SetItem(hwnd As HWND, ByRef ref_lvItem As LVITEM) As Long ListView_SetItem=SendMessage(hwnd,LVM_SETITEM,0,VarPtr(ref_lvItem) As LPARAM) As Long End Function Const LVM_INSERTITEM = LVM_FIRST+7 Function ListView_InsertItem(hwnd As HWND, ByRef ref_lvItem As LVITEM) As Long ListView_InsertItem=SendMessage(hwnd,LVM_INSERTITEM,0,VarPtr(ref_lvItem) As LPARAM) As Long End Function Const LVM_DELETEITEM = LVM_FIRST+8 Function ListView_DeleteItem(hwnd As HWND, iItem As Long) As BOOL ListView_DeleteItem=SendMessage(hwnd,LVM_DELETEITEM,iItem,0) As BOOL End Function Const LVM_DELETEALLITEMS = LVM_FIRST+9 Function ListView_DeleteAllItems(hwndLV As HWND) As BOOL ListView_DeleteAllItems=SendMessage(hwndLV,LVM_DELETEALLITEMS,0,0) As BOOL End Function Const LVM_GETCALLBACKMASK = LVM_FIRST+10 Const LVM_SETCALLBACKMASK = LVM_FIRST+11 Const LVNI_ALL = &H0000 Const LVNI_FOCUSED = &H0001 Const LVNI_SELECTED = &H0002 Const LVNI_CUT = &H0004 Const LVNI_DROPHILITED = &H0008 Const LVNI_ABOVE = &H0100 Const LVNI_BELOW = &H0200 Const LVNI_TOLEFT = &H0400 Const LVNI_TORIGHT = &H0800 Const LVM_GETNEXTITEM = LVM_FIRST+12 Const LVM_FINDITEM = LVM_FIRST+13 Function ListView_FindItem(hwnd As HWND, iStart As Long, ByRef ref_lvfi As LVFINDINFO) As Long ListView_FindItem=SendMessage(hwnd,LVM_FINDITEM,iStart As WPARAM,VarPtr(ref_lvfi) As LPARAM) As Long End Function Const LVM_GETITEMRECT = LVM_FIRST+14 Const LVM_SETITEMPOSITION = LVM_FIRST+15 Const LVM_GETITEMPOSITION = LVM_FIRST+16 Const LVM_GETSTRINGWIDTH = LVM_FIRST+17 Const LVM_HITTEST = LVM_FIRST+18 Const LVM_ENSUREVISIBLE = LVM_FIRST+19 Const LVM_SCROLL = LVM_FIRST+20 Function ListView_Scroll(hwnd As HWND, dx As Long, dy As Long) As BOOL ListView_Scroll=SendMessage(hwnd,LVM_SCROLL,dx,dy) As BOOL End Function Const LVM_REDRAWITEMS = LVM_FIRST+21 Const LVM_ARRANGE = LVM_FIRST+22 Const LVM_EDITLABEL = LVM_FIRST+23 Const LVM_GETEDITCONTROL = LVM_FIRST+24 Const LVM_GETCOLUMN = LVM_FIRST+25 Function ListView_GetColumn(hwnd As HWND, iCol As Long, ByRef ref_col As LVCOLUMN) As BOOL ListView_GetColumn=SendMessage(hwnd,LVM_GETCOLUMN,iCol,VarPtr(ref_col) As LPARAM) As BOOL End Function Const LVM_SETCOLUMN = LVM_FIRST+26 Function ListView_SetColumn(hwnd As HWND, iCol As Long, ByRef ref_col As LVCOLUMN) As BOOL ListView_SetColumn=SendMessage(hwnd,LVM_SETCOLUMN,iCol,VarPtr(ref_col) As LPARAM) As BOOL End Function Const LVM_INSERTCOLUMN = LVM_FIRST+27 Function ListView_InsertColumn(hWnd As HWND, iCol As Long, ByRef ref_lvColumn As LVCOLUMN) As Long ListView_InsertColumn=SendMessage(hWnd,LVM_INSERTCOLUMN ,iCol As WPARAM,VarPtr(ref_lvColumn) As LPARAM) As Long End Function Const LVM_DELETECOLUMN = LVM_FIRST+28 Function ListView_DeleteColumn(hwnd As HWND, iCol As Long) As BOOL ListView_DeleteColumn=SendMessage(hwnd,LVM_DELETECOLUMN,iCol,0) As BOOL End Function Const LVM_GETCOLUMNWIDTH = LVM_FIRST+29 Const LVM_SETCOLUMNWIDTH = LVM_FIRST+30 Function ListView_SetColumnWidth(hwnd As HWND, iCol As Long, cx As Long) As BOOL ListView_SetColumnWidth=SendMessage(hwnd,LVM_SETCOLUMNWIDTH,iCol,MAKELONG(cx,0) As LPARAM) As BOOL End Function Const LVM_GETHEADER = LVM_FIRST+31 Const LVM_CREATEDRAGIMAGE = LVM_FIRST+33 Const LVM_GETVIEWRECT = LVM_FIRST+34 Const LVM_GETTEXTCOLOR = LVM_FIRST+35 Const LVM_SETTEXTCOLOR = LVM_FIRST+36 Const LVM_GETTEXTBKCOLOR = LVM_FIRST+37 Const LVM_SETTEXTBKCOLOR = LVM_FIRST+38 Const LVM_GETTOPINDEX = LVM_FIRST+39 Const LVM_GETCOUNTPERPAGE = LVM_FIRST+40 Const LVM_GETORIGIN = LVM_FIRST+41 Const LVM_UPDATE = LVM_FIRST+42 Const LVIS_FOCUSED = &H0001 Const LVIS_SELECTED = &H0002 Const LVIS_CUT = &H0004 Const LVIS_DROPHILITED = &H0008 Const LVIS_GLOW = &H0010 Const LVIS_ACTIVATING = &H0020 Const LVIS_OVERLAYMASK = &H0F00 Const LVIS_STATEIMAGEMASK = &HF000 Const LVM_SETITEMSTATE = LVM_FIRST+43 Function ListView_SetItemState(hwnd As HWND, i As Long, state As DWord, mask As DWord) As BOOL Dim lvItem As LVITEM lvItem.stateMask=mask lvItem.state=state ListView_SetItemState=SendMessage(hwnd,LVM_SETITEMSTATE,i,VarPtr(lvItem) As LPARAM) As DWord End Function Const LVM_GETITEMSTATE = LVM_FIRST+44 Function ListView_GetItemState(hwnd As HWND, i As Long, mask As DWord) As DWord ListView_GetItemState=SendMessage(hwnd,LVM_GETITEMSTATE,i,mask As LPARAM) As DWord End Function Function ListView_GetCheckState(hwnd As HWND, iIndex As Long) As BOOL ListView_GetCheckState=((SendMessage(hwnd,LVM_GETITEMSTATE,iIndex,LVIS_STATEIMAGEMASK) As DWord)>>12)-1 End Function Const LVM_GETITEMTEXT = LVM_FIRST+45 Sub ListView_GetItemText(hwnd As HWND, iItem As Long, iSubItem As Long, pszText As LPSTR, cchTextMax As Long) Dim lvi As LVITEM lvi.iSubItem=iSubItem lvi.cchTextMax=cchTextMax lvi.pszText=pszText SendMessage(hwnd,LVM_GETITEMTEXT,iItem,VarPtr(lvi) As LPARAM) End Sub Const LVM_SETITEMTEXT = LVM_FIRST+46 Sub ListView_SetItemText(hwnd As HWND, iItem As Long, iSubItem As Long, pszText As LPCSTR) Dim lvi As LVITEM lvi.iSubItem=iSubItem lvi.pszText=pszText SendMessage(hwnd,LVM_SETITEMTEXT,iItem,VarPtr(lvi) As LPARAM) End Sub Const LVM_SETITEMCOUNT = LVM_FIRST+47 Const LVM_SORTITEMS = LVM_FIRST+48 Function ListView_SortItems(hwnd As HWND, pfnCompare As VoidPtr, lParamSort As LPARAM) As BOOL ListView_SortItems=SendMessage(hwnd,LVM_SORTITEMS,lParamSort As WPARAM,pfnCompare As LPARAM) As BOOL End Function Const LVM_SETITEMPOSITION32 = LVM_FIRST+49 Const LVM_GETSELECTEDCOUNT = LVM_FIRST+50 Const LVM_GETITEMSPACING = LVM_FIRST+51 Const LVM_GETISEARCHSTRING = LVM_FIRST+52 Const LVM_SETICONSPACING = LVM_FIRST+53 Const LVM_SETEXTENDEDLISTVIEWSTYLE = LVM_FIRST+54 Function ListView_SetExtendedListViewStyle(hwndLV As HWND, dwExStyle As DWord) As DWord ListView_SetExtendedListViewStyle=SendMessage(hwndLV,LVM_SETEXTENDEDLISTVIEWSTYLE,dwExStyle,dwExStyle) As DWord End Function Const LVM_GETEXTENDEDLISTVIEWSTYLE = LVM_FIRST+55 Function ListView_GetExtendedListViewStyle(hwndLV As HWND) As DWord ListView_GetExtendedListViewStyle=SendMessage(hwndLV,LVM_GETEXTENDEDLISTVIEWSTYLE,0,0) As DWord End Function Const LVM_GETSUBITEMRECT = LVM_FIRST+56 Const LVM_SUBITEMHITTEST = LVM_FIRST+57 Const LVM_SETCOLUMNORDERARRAY = LVM_FIRST+58 Const LVM_GETCOLUMNORDERARRAY = LVM_FIRST+59 Const LVM_SETHOTITEM = LVM_FIRST+60 Const LVM_GETHOTITEM = LVM_FIRST+61 Const LVM_SETHOTCURSOR = LVM_FIRST+62 Const LVM_GETHOTCURSOR = LVM_FIRST+63 Const LVM_APPROXIMATEVIEWRECT = LVM_FIRST+64 Const LVM_SETWORKAREAS = LVM_FIRST+65 Const LVM_GETSELECTIONMARK = LVM_FIRST+66 Const LVM_SETSELECTIONMARK = LVM_FIRST+67 Const LVM_SETBKIMAGE = LVM_FIRST+68 Const LVM_GETBKIMAGE = LVM_FIRST+69 Const LVM_GETWORKAREAS = LVM_FIRST+70 Const LVM_SETHOVERTIME = LVM_FIRST+71 Const LVM_GETHOVERTIME = LVM_FIRST+72 Const LVM_GETNUMBEROFWORKAREAS = LVM_FIRST+73 Const LVM_SETTOOLTIPS = LVM_FIRST+74 Const LVM_GETTOOLTIPS = LVM_FIRST+78 Type NMLISTVIEW hdr As NMHDR iItem As Long iSubItem As Long uNewState As DWord uOldState As DWord uChanged As DWord ptAction As POINTAPI lParam As LPARAM End Type Type NMLVDISPINFO hdr As NMHDR item As LVITEM End Type Type NMLVKEYDOWN hdr As NMHDR wVKey As Word flags As DWord End Type Const LVN_FIRST = -100 Const LVN_ITEMCHANGING = LVN_FIRST-0 Const LVN_ITEMCHANGED = LVN_FIRST-1 Const LVN_INSERTITEM = LVN_FIRST-2 Const LVN_DELETEITEM = LVN_FIRST-3 Const LVN_DELETEALLITEMS = LVN_FIRST-4 Const LVN_BEGINLABELEDIT = LVN_FIRST-5 Const LVN_ENDLABELEDIT = LVN_FIRST-6 Const LVN_COLUMNCLICK = LVN_FIRST-8 Const LVN_BEGINDRAG = LVN_FIRST-9 Const LVN_BEGINRDRAG = LVN_FIRST-11 Const LVN_ODCACHEHINT = LVN_FIRST-13 Const LVN_ODFINDITEM = LVN_FIRST-52 Const LVN_ITEMACTIVATE = LVN_FIRST-14 Const LVN_ODSTATECHANGED = LVN_FIRST-15 Const LVN_HOTTRACK = LVN_FIRST-21 Const LVN_GETDISPINFO = LVN_FIRST-50 Const LVN_SETDISPINFO = LVN_FIRST-51 Const LVN_KEYDOWN = LVN_FIRST-55 Const LVS_ICON = &H0000 Const LVS_REPORT = &H0001 Const LVS_SMALLICON = &H0002 Const LVS_LIST = &H0003 Const LVS_SINGLESEL = &H0004 Const LVS_SHOWSELALWAYS = &H0008 Const LVS_SORTASCENDING = &H0010 Const LVS_SORTDESCENDING = &H0020 Const LVS_SHAREIMAGELISTS = &H0040 Const LVS_NOLABELWRAP = &H0080 Const LVS_AUTOARRANGE = &H0100 Const LVS_EDITLABELS = &H0200 Const LVS_OWNERDATA = &H1000 Const LVS_NOSCROLL = &H2000 Const LVS_ALIGNTOP = &H0000 Const LVS_ALIGNLEFT = &H0800 Const LVS_OWNERDRAWFIXED = &H0400 Const LVS_NOCOLUMNHEADER = &H4000 Const LVS_NOSORTHEADER = &H8000 Const LVS_EX_GRIDLINES = &H00000001 Const LVS_EX_SUBITEMIMAGES = &H00000002 Const LVS_EX_CHECKBOXES = &H00000004 Const LVS_EX_TRACKSELECT = &H00000008 Const LVS_EX_HEADERDRAGDROP = &H00000010 Const LVS_EX_FULLROWSELECT = &H00000020 Const LVS_EX_ONECLICKACTIVATE = &H00000040 Const LVS_EX_TWOCLICKACTIVATE = &H00000080 Const LVS_EX_FLATSB = &H00000100 Const LVS_EX_REGIONAL = &H00000200 Const LVS_EX_INFOTIP = &H00000400 Const LVS_EX_UNDERLINEHOT = &H00000800 Const LVS_EX_UNDERLINECOLD = &H00001000 Const LVS_EX_MULTIWORKAREAS = &H00002000 '---------------------- ' ProgressBar Control '---------------------- Const PBS_SMOOTH = &H01 Const PBS_VERTICAL = &H04 Const PBM_SETRANGE = WM_USER+1 Const PBM_SETPOS = WM_USER+2 Const PBM_DELTAPOS = WM_USER+3 Const PBM_SETSTEP = WM_USER+4 Const PBM_STEPIT = WM_USER+5 Const PBM_SETRANGE32 = WM_USER+6 Type PBRANGE iLow As Long iHigh As Long End Type Const PBM_GETRANGE = WM_USER+7 Const PBM_GETPOS = WM_USER+8 Const PBM_SETBARCOLOR = WM_USER+9 Const PBM_SETBKCOLOR = CCM_SETBKCOLOR '------------------- ' Statusbar Control '------------------- Const SBARS_SIZEGRIP = &H0100 Const SB_SETTEXT = WM_USER+1 Const SB_GETTEXT = WM_USER+2 Const SB_GETTEXTLENGTH = WM_USER+3 Const SB_SETPARTS = WM_USER+4 Const SB_GETPARTS = WM_USER+6 Const SB_GETBORDERS = WM_USER+7 Const SB_SETMINHEIGHT = WM_USER+8 Const SB_SIMPLE = WM_USER+9 Const SB_GETRECT = WM_USER+10 Const SB_ISSIMPLE = WM_USER+14 Const SB_SETICON = WM_USER+15 Const SB_SETTIPTEXT = WM_USER+16 Const SB_GETTIPTEXT = WM_USER+18 Const SB_GETICON = WM_USER+20 Const SB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT Const SB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT Const SB_SETBKCOLOR = CCM_SETBKCOLOR Const SBT_OWNERDRAW = &H1000 Const SBT_NOBORDERS = &H0100 Const SBT_POPOUT = &H0200 Const SBT_RTLREADING = &H0400 Const SBT_TOOLTIPS = &H0800 Const SBN_SIMPLEMODECHANGE = 880 Declare Function CreateStatusWindow Lib "comctl32" Alias _FuncName_CreateStatusWindow (style As Long, lpszText As LPCTSTR, hwndParent As HWND, wID As DWord) As HWND '----------------- ' Toolbar Control '----------------- Const TBSTATE_CHECKED = &H01 Const TBSTATE_PRESSED = &H02 Const TBSTATE_ENABLED = &H04 Const TBSTATE_HIDDEN = &H08 Const TBSTATE_INDETERMINATE = &H10 Const TBSTATE_WRAP = &H20 Const TBSTATE_ELLIPSES = &H40 Const TBSTATE_MARKED = &H80 Const TBSTYLE_BUTTON = &H0000 Const TBSTYLE_SEP = &H0001 Const TBSTYLE_CHECK = &H0002 Const TBSTYLE_GROUP = &H0004 Const TBSTYLE_CHECKGROUP = TBSTYLE_GROUP or TBSTYLE_CHECK Const TBSTYLE_DROPDOWN = &H0008 Const TBSTYLE_AUTOSIZE = &H0010 Const TBSTYLE_NOPREFIX = &H0020 Const TBSTYLE_TOOLTIPS = &H0100 Const TBSTYLE_WRAPABLE = &H0200 Const TBSTYLE_ALTDRAG = &H0400 Const TBSTYLE_FLAT = &H0800 Const TBSTYLE_LIST = &H1000 Const TBSTYLE_CUSTOMERASE = &H2000 Const TBSTYLE_REGISTERDROP = &H4000 Const TBSTYLE_TRANSPARENT = &H8000 Const TBSTYLE_EX_DRAWDDARROWS = &H00000001 Type TBBUTTON iBitmap As Long idCommand As Long fsState As Byte fsStyle As Byte #ifdef _WIN64 bReserved[ELM(6)] As Byte #else bReserved[ELM(2)] As Byte #endif dwData As DWord iString As Long End Type Const TB_ENABLEBUTTON = WM_USER+1 Const TB_CHECKBUTTON = WM_USER+2 Const TB_PRESSBUTTON = WM_USER+3 Const TB_HIDEBUTTON = WM_USER+4 Const TB_INDETERMINATE = WM_USER+5 Const TB_MARKBUTTON = WM_USER+6 Const TB_ISBUTTONENABLED = WM_USER+9 Const TB_ISBUTTONCHECKED = WM_USER+10 Const TB_ISBUTTONPRESSED = WM_USER+11 Const TB_ISBUTTONHIDDEN = WM_USER+12 Const TB_ISBUTTONINDETERMINATE = WM_USER+13 Const TB_ISBUTTONHIGHLIGHTED = WM_USER+14 Const TB_SETSTATE = WM_USER+17 Const TB_GETSTATE = WM_USER+18 Const TB_ADDBITMAP = WM_USER+19 Const TB_ADDBUTTONS = WM_USER+20 Const TB_INSERTBUTTON = WM_USER+21 Const TB_DELETEBUTTON = WM_USER+22 Const TB_GETBUTTON = WM_USER+23 Const TB_BUTTONCOUNT = WM_USER+24 Const TB_COMMANDTOINDEX = WM_USER+25 Const TB_SAVERESTORE = WM_USER+26 Const TB_CUSTOMIZE = WM_USER+27 Const TB_ADDSTRING = WM_USER+28 Const TB_GETITEMRECT = WM_USER+29 Const TB_BUTTONSTRUCTSIZE = WM_USER+30 Const TB_SETBUTTONSIZE = WM_USER+31 Const TB_SETBITMAPSIZE = WM_USER+32 Const TB_AUTOSIZE = WM_USER+33 Const TB_GETTOOLTIPS = WM_USER+35 Const TB_SETTOOLTIPS = WM_USER+36 Const TB_SETPARENT = WM_USER+37 Const TB_SETROWS = WM_USER+39 Const TB_GETROWS = WM_USER+40 Const TB_SETCMDID = WM_USER+42 Const TB_CHANGEBITMAP = WM_USER+43 Const TB_GETBITMAP = WM_USER+44 Const TB_GETBUTTONTEXT = WM_USER+45 Const TB_REPLACEBITMAP = WM_USER+46 Const TB_SETINDENT = WM_USER+47 Const TB_SETIMAGELIST = WM_USER+48 Const TB_GETIMAGELIST = WM_USER+49 Const TB_LOADIMAGES = WM_USER+50 Const TB_GETRECT = WM_USER+51 Const TB_SETHOTIMAGELIST = WM_USER+52 Const TB_GETHOTIMAGELIST = WM_USER+53 Const TB_SETDISABLEDIMAGELIST = WM_USER+54 Const TB_GETDISABLEDIMAGELIST = WM_USER+55 Const TB_SETSTYLE = WM_USER+56 Const TB_GETSTYLE = WM_USER+57 Const TB_GETBUTTONSIZE = WM_USER+58 Const TB_SETBUTTONWIDTH = WM_USER+59 Const TB_SETMAXTEXTROWS = WM_USER+60 Const TB_GETTEXTROWS = WM_USER+61 Const TB_GETOBJECT = WM_USER+62 Const TB_GETBUTTONINFO = WM_USER+65 Const TB_SETBUTTONINFO = WM_USER+66 Const TB_GETHOTITEM = WM_USER+71 Const TB_SETHOTITEM = WM_USER+72 Const TB_SETANCHORHIGHLIGHT = WM_USER+73 Const TB_GETANCHORHIGHLIGHT = WM_USER+74 Const TB_MAPACCELERATOR = WM_USER+78 Const TB_GETINSERTMARK = WM_USER+79 Const TB_SETINSERTMARK = WM_USER+80 Const TB_INSERTMARKHITTEST = WM_USER+81 Const TB_MOVEBUTTON = WM_USER+82 Const TB_GETMAXSIZE = WM_USER+83 Const TB_SETEXTENDEDSTYLE = WM_USER+84 Const TB_GETEXTENDEDSTYLE = WM_USER+85 Const TB_GETPADDING = WM_USER+86 Const TB_SETPADDING = WM_USER+87 Const TB_SETINSERTMARKCOLOR = WM_USER+88 Const TB_GETINSERTMARKCOLOR = WM_USER+89 Const TB_SETCOLORSCHEME = CCM_SETCOLORSCHEME Const TB_GETCOLORSCHEME = CCM_GETCOLORSCHEME Const TB_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT Const TB_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT Const TB_HITTEST = WM_USER+69 Type TOOLTIPTEXT hdr As NMHDR lpszText As LPSTR szText[79] As Byte hinst As HINSTANCE uFlags As DWord lParam As LPARAM End Type Const TTN_NEEDTEXT = -520 Declare Function CreateToolbarEx Lib "comctl32" (hWnd As HWND, ws As DWord, wID As DWord, nBitmaps As Long, hBMInst As HINSTANCE, wBMID As DWord, lpButtons As VoidPtr, iNumButtons As Long, dxButton As Long, dyButton As Long, dxBitmap As Long, dyBitmap As Long, uStructSize As DWord) As HWND '----------------------- ' ToolTip Control '----------------------- Const TOOLTIPS_CLASS = "tooltips_class32" Const TTS_ALWAYSTIP = &H01 Const TTS_NOPREFIX = &H02 Const TTS_NOANIMATE = &H10 Const TTS_NOFADE = &H20 Const TTS_BALLOON = &H40 Const TTS_CLOSE = &H80 Const TTF_IDISHWND = &H0001 Const TTF_CENTERTIP = &H0002 Const TTF_RTLREADING = &H0004 Const TTF_SUBCLASS = &H0010 Const TTF_TRACK = &H0020 Const TTF_ABSOLUTE = &H0080 Const TTF_TRANSPARENT = &H0100 Const TTF_PARSELINKS = &H1000 Const TTF_DI_SETITEM = &H8000 ' valid only on the TTN_NEEDTEXT callback Type TOOLINFO cbSize As DWord uFlags As DWord hwnd As HWND uId As ULONG_PTR rect As RECT hinst As HINSTANCE lpszText as LPSTR lParam As LPARAM lpReserved As VoidPtr End Type Const TTM_ACTIVATE = (WM_USER + 1) Const TTM_SETDELAYTIME = (WM_USER + 3) Const TTM_ADDTOOL = (WM_USER + 4) Const TTM_DELTOOL = (WM_USER + 5) Const TTM_NEWTOOLRECT = (WM_USER + 6) Const TTM_RELAYEVENT = (WM_USER + 7) Const TTM_GETTOOLINFO = (WM_USER + 8) Const TTM_SETTOOLINFO = (WM_USER + 9) Const TTM_HITTEST = (WM_USER +10) Const TTM_GETTEXT = (WM_USER +11) Const TTM_UPDATETIPTEXT = (WM_USER +12) Const TTM_GETTOOLCOUNT = (WM_USER +13) Const TTM_ENUMTOOLS = (WM_USER +14) Const TTM_GETCURRENTTOOL = (WM_USER + 15) Const TTM_WINDOWFROMPOINT = (WM_USER + 16) Const TTM_TRACKACTIVATE = (WM_USER + 17) ' wParam = TRUE/FALSE start end lparam = LPTOOLINFO Const TTM_TRACKPOSITION = (WM_USER + 18) ' lParam = dwPos Const TTM_SETTIPBKCOLOR = (WM_USER + 19) Const TTM_SETTIPTEXTCOLOR = (WM_USER + 20) Const TTM_GETDELAYTIME = (WM_USER + 21) Const TTM_GETTIPBKCOLOR = (WM_USER + 22) Const TTM_GETTIPTEXTCOLOR = (WM_USER + 23) Const TTM_SETMAXTIPWIDTH = (WM_USER + 24) Const TTM_GETMAXTIPWIDTH = (WM_USER + 25) Const TTM_SETMARGIN = (WM_USER + 26) ' lParam = lprc Const TTM_GETMARGIN = (WM_USER + 27) ' lParam = lprc Const TTM_POP = (WM_USER + 28) Const TTM_UPDATE = (WM_USER + 29) Const TTM_GETBUBBLESIZE = (WM_USER + 30) Const TTM_ADJUSTRECT = (WM_USER + 31) Const TTM_SETTITLE = (WM_USER + 32) ' wParam = TTI_*, lParam = char* szTitle '------------------- ' TrackBar Control '------------------- Const TBS_AUTOTICKS = &H0001 Const TBS_VERT = &H0002 Const TBS_HORZ = &H0000 Const TBS_TOP = &H0004 Const TBS_BOTTOM = &H0000 Const TBS_LEFT = &H0004 Const TBS_RIGHT = &H0000 Const TBS_BOTH = &H0008 Const TBS_NOTICKS = &H0010 Const TBS_ENABLESELRANGE = &H0020 Const TBS_FIXEDLENGTH = &H0040 Const TBS_NOTHUMB = &H0080 Const TBS_TOOLTIPS = &H0100 Const TBM_GETPOS = WM_USER Const TBM_GETRANGEMIN = WM_USER+1 Const TBM_GETRANGEMAX = WM_USER+2 Const TBM_GETTIC = WM_USER+3 Const TBM_SETTIC = WM_USER+4 Const TBM_SETPOS = WM_USER+5 Const TBM_SETRANGE = WM_USER+6 Const TBM_SETRANGEMIN = WM_USER+7 Const TBM_SETRANGEMAX = WM_USER+8 Const TBM_CLEARTICS = WM_USER+9 Const TBM_SETSEL = WM_USER+10 Const TBM_SETSELSTART = WM_USER+11 Const TBM_SETSELEND = WM_USER+12 Const TBM_GETPTICS = WM_USER+14 Const TBM_GETTICPOS = WM_USER+15 Const TBM_GETNUMTICS = WM_USER+16 Const TBM_GETSELSTART = WM_USER+17 Const TBM_GETSELEND = WM_USER+18 Const TBM_CLEARSEL = WM_USER+19 Const TBM_SETTICFREQ = WM_USER+20 Const TBM_SETPAGESIZE = WM_USER+21 Const TBM_GETPAGESIZE = WM_USER+22 Const TBM_SETLINESIZE = WM_USER+23 Const TBM_GETLINESIZE = WM_USER+24 Const TBM_GETTHUMBRECT = WM_USER+25 Const TBM_GETCHANNELRECT = WM_USER+26 Const TBM_SETTHUMBLENGTH = WM_USER+27 Const TBM_GETTHUMBLENGTH = WM_USER+28 Const TBM_SETTOOLTIPS = WM_USER+29 Const TBM_GETTOOLTIPS = WM_USER+30 Const TBM_SETTIPSIDE = WM_USER+31 Const TBTS_TOP = 0 Const TBTS_LEFT = 1 Const TBTS_BOTTOM = 2 Const TBTS_RIGHT = 3 Const TBM_SETBUDDY = WM_USER+32 Const TBM_GETBUDDY = WM_USER+33 Const TBM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT Const TBM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT '------------------- ' TreeView Control '------------------- Type _System_DeclareHandle_HTREEITEM:unused As DWord:End Type TypeDef HTREEITEM = *_System_DeclareHandle_HTREEITEM Const TV_FIRST = &H1100 'TreeView messages Const TVM_INSERTITEM = TV_FIRST + 0 Function TreeView_InsertItem(hWnd As HWND, ByRef ref_is As TV_INSERTSTRUCT) As HTREEITEM Return SendMessage(hWnd,TVM_INSERTITEM,0,VarPtr(ref_is) As LPARAM) As HTREEITEM End Function Const TVM_DELETEITEM = TV_FIRST + 1 Function TreeView_DeleteItem(hWnd As HWND, hitem As HTREEITEM) As BOOL Return SendMessage(hWnd,TVM_DELETEITEM,0,hitem As LPARAM) As BOOL End Function Function TreeView_DeleteAllItems(hWnd As HWND) As BOOL Return SendMessage(hWnd,TVM_DELETEITEM,0,TVI_ROOT As LPARAM) As BOOL End Function Const TVM_EXPAND = TV_FIRST + 2 Function TreeView_Expand(hWnd As HWND, hitem As HTREEITEM, code As DWord) As BOOL TreeView_Expand=SendMessage(hWnd,TVM_EXPAND,code As WPARAM,hitem As LPARAM) As BOOL End Function Const TVE_COLLAPSE = &H0001 Const TVE_EXPAND = &H0002 Const TVE_TOGGLE = &H0003 Const TVE_EXPANDPARTIAL = &H4000 Const TVE_COLLAPSERESET = &H8000 Const TVM_GETITEMRECT = TV_FIRST + 4 Function TreeView_GetItemRect(hWnd As HWND, hitem As HTREEITEM, ByRef refRect As RECT, code As DWord) As BOOL memcpy(VarPtr(refRect),VarPtr(hitem),SizeOf(HTREEITEM)) TreeView_GetItemRect=SendMessage(hWnd,TVM_GETITEMRECT,code As WPARAM,VarPtr(refRect) As LPARAM) As BOOL End Function Const TVM_GETCOUNT = TV_FIRST + 5 Function TreeView_GetCount(hWnd As HWND) As DWord TreeView_GetCount=SendMessage(hWnd,TVM_GETCOUNT,0,0) As DWord End Function Const TVM_GETINDENT = TV_FIRST + 6 Function TreeView_GetIndent(hWnd As HWND) As DWord TreeView_GetIndent=SendMessage(hWnd,TVM_GETINDENT,0,0) As DWord End Function Const TVM_SETINDENT = TV_FIRST + 7 Function TreeView_SetIndent(hWnd As HWND, indent As DWord) As DWord TreeView_SetIndent=SendMessage(hWnd,TVM_SETINDENT,indent As WPARAM,0) As DWord End Function Const TVM_GETIMAGELIST = TV_FIRST + 8 Function TreeView_GetImageList(hWnd As HWND, iImage As DWord) As HIMAGELIST TreeView_GetImageList=SendMessage(hWnd,TVM_GETIMAGELIST,iImage As WPARAM,0) As HIMAGELIST End Function Const TVSIL_NORMAL = 0 Const TVSIL_STATE = 2 Const TVM_SETIMAGELIST = TV_FIRST + 9 Function TreeView_SetImageList(hWnd As HWND, himl As HIMAGELIST, iImage As DWord) As HIMAGELIST TreeView_SetImageList=SendMessage(hWnd,TVM_SETIMAGELIST,iImage As WPARAM,himl As LPARAM) As HIMAGELIST End Function Const TVM_GETNEXTITEM = TV_FIRST + 10 Function TreeView_GetNextItem(hWnd As HWND, hitem As HTREEITEM, code As DWord) As HTREEITEM TreeView_GetNextItem=SendMessage(hWnd,TVM_GETNEXTITEM,code As WPARAM,hitem As LPARAM) As HTREEITEM End Function Const TVM_SELECTITEM = &H110B Const TVM_GETITEM = &H110C Const TVM_SETITEM = &H110D Const TVM_GETVISIBLECOUNT = &H1110 Const TVM_HITTEST = &H1111 Const TVM_SORTCHILDREN = &H1113 Const TVM_SETBKCOLOR = &H111D Const TVM_SETTEXTCOLOR = &H111E Const TVM_GETBKCOLOR = &H111F Const TVM_GETTEXTCOLOR = &H1120 Const TVI_ROOT = ((-&H10000) As HTREEITEM) Const TVI_FIRST = ((-&H0FFFF) As HTREEITEM) Const TVI_LAST = ((-&H0FFFE) As HTREEITEM) Const TVI_SORT = ((-&H0FFFD) As HTREEITEM) Type TVITEM mask As DWord hItem As HTREEITEM state As DWord stateMask As DWord pszText As LPSTR cchTextMax As Long iImage As Long iSelectedImage As Long cChildren As Long lParam As LPARAM End Type Type TVINSERTSTRUCT hParent As HTREEITEM hInsertAfter As HTREEITEM item As TVITEM End Type TypeDef TV_INSERTSTRUCT = TVINSERTSTRUCT Const TVIF_TEXT = &H0001 Const TVIF_IMAGE = &H0002 Const TVIF_PARAM = &H0004 Const TVIF_STATE = &H0008 Const TVIF_HANDLE = &H0010 Const TVIF_SELECTEDIMAGE = &H0020 Const TVIF_CHILDREN = &H0040 Const TVIF_INTEGRAL = &H0080 Const TVIS_SELECTED = &H0002 Const TVIS_CUT = &H0004 Const TVIS_DROPHILITED = &H0008 Const TVIS_BOLD = &H0010 Const TVIS_EXPANDED = &H0020 Const TVIS_EXPANDEDONCE = &H0040 Const TVIS_EXPANDPARTIAL = &H0080 Const TVIS_OVERLAYMASK = &H0F00 Const TVIS_STATEIMAGEMASK = &HF000 Const TVIS_USERMASK = &HF000 Type NMTREEVIEW hdr As NMHDR action As DWord itemOld As TVITEM itemNew As TVITEM ptDrag As POINTAPI End Type Const TVN_FIRST = -400 Const TVN_SELCHANGING = TVN_FIRST-1 Const TVN_SELCHANGED = TVN_FIRST-2 Const TVN_GETDISPINFO = TVN_FIRST-3 Const TVN_SETDISPINFO = TVN_FIRST-4 Const TVN_ITEMEXPANDING = TVN_FIRST-5 Const TVN_ITEMEXPANDED = TVN_FIRST-6 Const TVN_BEGINDRAG = TVN_FIRST-7 Const TVN_BEGINRDRAG = TVN_FIRST-8 Const TVN_DELETEITEM = TVN_FIRST-9 Const TVN_BEGINLABELEDIT = TVN_FIRST-10 Const TVN_ENDLABELEDIT = TVN_FIRST-11 Const TVN_KEYDOWN = TVN_FIRST-12 Const TVN_GETINFOTIP = TVN_FIRST-13 Const TVN_SINGLEEXPAND = TVN_FIRST-15 Const TVGN_ROOT = &H0000 Const TVGN_NEXT = &H0001 Const TVGN_PREVIOUS = &H0002 Const TVGN_PARENT = &H0003 Const TVGN_CHILD = &H0004 Const TVGN_FIRSTVISIBLE = &H0005 Const TVGN_NEXTVISIBLE = &H0006 Const TVGN_PREVIOUSVISIBLE = &H0007 Const TVGN_DROPHILITE = &H0008 Const TVGN_CARET = &H0009 Const TVGN_LASTVISIBLE = &H000A '----------------- ' UpDown Control '----------------- Declare Function CreateUpDownControl Lib "comctl32" (dwStyle As DWord, x As Long, y As Long, cx As Long, cy As Long, hParent As HWND, nID As Long, hInst As HINSTANCE, hBuddy As HWND, nUpper As Long, nLower As Long, nPos As Long) As HWND Const UDS_WRAP = &H0001 Const UDS_SETBUDDYINT = &H0002 Const UDS_ALIGNRIGHT = &H0004 Const UDS_ALIGNLEFT = &H0008 Const UDS_AUTOBUDDY = &H0010 Const UDS_ARROWKEYS = &H0020 Const UDS_HORZ = &H0040 Const UDS_NOTHOUSANDS = &H0080 Const UDS_HOTTRACK = &H0100 Const UDM_SETRANGE = WM_USER+101 Const UDM_GETRANGE = WM_USER+102 Const UDM_SETPOS = WM_USER+103 Const UDM_GETPOS = WM_USER+104 Const UDM_SETBUDDY = WM_USER+105 Const UDM_GETBUDDY = WM_USER+106 Const UDM_SETACCEL = WM_USER+107 Const UDM_GETACCEL = WM_USER+108 Const UDM_SETBASE = WM_USER+109 Const UDM_GETBASE = WM_USER+110 Const UDM_SETRANGE32 = WM_USER+111 Const UDM_GETRANGE32 = WM_USER+112 Type NMUPDOWN hdr As NMHDR iPos As Long iDelta As Long End Type Const UDN_FIRST = -721 Const UDN_DELTAPOS = UDN_FIRST-1 '-------------------- ' Calender Contorl '-------------------- Const MONTHCAL_CLASS = "SysMonthCal32" Const MCS_DAYSTATE = &H0001 Const MCS_MULTISELECT = &H0002 Const MCS_WEEKNUMBERS = &H0004 Const MCS_NOTODAYCIRCLE = &H0008 Const MCS_NOTODAY = &H0010 Const MCM_FIRST = &H1000 Const MCM_GETCURSEL = (MCM_FIRST + 1) Const MCM_SETCURSEL = (MCM_FIRST + 2) Const MCM_GETMAXSELCOUNT = (MCM_FIRST + 3) Const MCM_SETMAXSELCOUNT = (MCM_FIRST + 4) Const MCM_GETSELRANGE = (MCM_FIRST + 5) Const MCM_SETSELRANGE = (MCM_FIRST + 6) Const MCM_GETMONTHRANGE = (MCM_FIRST + 7) Const MCM_SETDAYSTATE = (MCM_FIRST + 8) Const MCM_GETMINREQRECT = (MCM_FIRST + 9) Const MCM_SETCOLOR = (MCM_FIRST + 10) Const MCM_GETCOLOR = (MCM_FIRST + 11) Const MCM_SETTODAY = (MCM_FIRST + 12) Const MCM_GETTODAY = (MCM_FIRST + 13) Const MCM_HITTEST = (MCM_FIRST + 14) Const MCN_FIRST = &HFFFFFD12 Type NMSELCHANGE nmhdr As NMHDR stSelStart As SYSTEMTIME stSelEnd As SYSTEMTIME End Type Const MCN_SELCHANGE = MCN_FIRST + &H1 Declare Function _TrackMouseEvent Lib "comctl32" (ByRef EventTrack As TRACKMOUSEEVENT) As BOOL Const TD_WARNING_ICON = MAKEINTRESOURCEW(&hffff /*-1*/) Const TD_ERROR_ICON = MAKEINTRESOURCEW(&hfffe /*-2*/) Const TD_INFORMATION_ICON = MAKEINTRESOURCEW(&hfffd /*-3*/) Const TD_SHIELD_ICON = MAKEINTRESOURCEW(&hfffc /*-4*/) Const Enum _TASKDIALOG_COMMON_BUTTON_FLAGS TDCBF_OK_BUTTON = &h0001 TDCBF_YES_BUTTON = &h0002 TDCBF_NO_BUTTON = &h0004 TDCBF_CANCEL_BUTTON = &h0008 TDCBF_RETRY_BUTTON = &h0010 TDCBF_CLOSE_BUTTON = &h0020 End Enum TypeDef TASKDIALOG_COMMON_BUTTON_FLAGS = Long #endif '_INC_COMMCTRL