⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 comctl32.inc

📁 一个用纯汇编 写的操作系统 源代码 是用 TASM 编译器写的
💻 INC
📖 第 1 页 / 共 3 页
字号:

; COMCTL32.DLL structures and constants

struct PROPSHEETPAGE
  dwSize      dd ?
  dwFlags     dd ?
  hInstance   dd ?
  pszTemplate dd ?
  pszIcon     dd ?
  pszTitle    dd ?
  pfnDlgProc  dd ?
  lParam      dd ?
  pfnCallback dd ?
  pcRefParent dd ?
ends

struct PROPSHEETHEADER
  dwSize      dd ?
  dwFlags     dd ?
  hwndParent  dd ?
  hInstance   dd ?
  pszIcon     dd ?
  pszCaption  dd ?
  nPages      dd ?
  pStartPage  dd ?
  ppsp	      dd ?
  pfnCallback dd ?
ends

struct IMAGEINFO
  hbmImage dd ?
  hbmMask  dd ?
  Unused1  dd ?
  Unused2  dd ?
  rcImage  RECT
ends

struct HD_ITEM
  mask	     dd ?
  cxy	     dd ?
  pszText    dd ?
  hbm	     dd ?
  cchTextMax dd ?
  fmt	     dd ?
  lParam     dd ?
ends

struct HD_LAYOUT
  prc	dd ?
  pwpos dd ?
ends

struct HD_HITTESTINFO
  pt	POINT
  flags dd ?
  iItem dd ?
ends

struct HD_NOTIFY
  hdr	  NMHDR
  iItem   dd ?
  iButton dd ?
  pitem   dd ?
ends

struct TBBUTTON
  iBitmap   dd ?
  idCommand dd ?
  fsState   db ?
  fsStyle   db ?
	    dw ?
  dwData    dd ?
  iString   dd ?
ends

struct COLORMAP
  from dd ?
  to   dd ?
ends

struct TBADDBITMAP
  hInst dd ?
  nID	dd ?
ends

struct TBSAVEPARAMS
  hkr	       dd ?
  pszSubKey    dd ?
  pszValueName dd ?
ends

struct TBREPLACEBITMAP
  hInstOld dd ?
  nIDOld   dd ?
  hInstNew dd ?
  nIDNew   dd ?
  nButtons dd ?
ends

struct NMTOOLBAR
  hdr	   NMHDR
  iItem    dd ?
  tbButton TBBUTTON
  cchText  dd ?
  pszText  dd ?
ends

struct REBARINFO
  cbSize dd ?
  fMask  dd ?
  himl	 dd ?
ends

struct REBARBANDINFO
  cbSize      dd ?
  fMask       dd ?
  fStyle      dd ?
  clrFore     dd ?
  clrBack     dd ?
  lpText      dd ?
  cch	      dd ?
  iImage      dd ?
  hwndChild   dd ?
  cxMinChild  dd ?
  cyMinChild  dd ?
  cx	      dd ?
  hbmBack     dd ?
  wID	      dd ?
ends

struct TOOLINFO
  cbSize   dd ?
  uFlags   dd ?
  hwnd	   dd ?
  uId	   dd ?
  Rect	   RECT
  hInst    dd ?
  lpszText dd ?
ends

struct TTHITTESTINFO
  hwnd dd ?
  pt   POINT
  ti   TOOLINFO
ends

struct TOOLTIPTEXT
  hdr	   NMHDR
  lpszText dd ?
  szText   db 80 dup (?)
  hinst    dd ?
  uFlags   dd ?
ends

struct UDACCEL
  nSec dd ?
  nInc dd ?
ends

struct NM_UPDOWN
  hdr	 NMHDR
  iPos	 dd ?
  iDelta dd ?
ends

struct LV_ITEM
  mask	     dd ?
  iItem      dd ?
  iSubItem   dd ?
  state      dd ?
  stateMask  dd ?
  pszText    dd ?
  cchTextMax dd ?
  iImage     dd ?
  lParam     dd ?
  iIndent    dd ?
ends

struct LV_FINDINFO
  flags       dd ?
  psz	      dd ?
  lParam      dd ?
  pt	      POINT
  vkDirection dd ?
ends

struct LV_HITTESTINFO
  pt	POINT
  flags dd ?
  iItem dd ?
ends

struct LV_COLUMN
  mask	     dd ?
  fmt	     dd ?
  cx	     dd ?
  pszText    dd ?
  cchTextMax dd ?
  iSubItem   dd ?
ends

struct NM_LISTVIEW
  hdr	    NMHDR
  iItem     dd ?
  iSubItem  dd ?
  uNewState dd ?
  uOldState dd ?
  uChanged  dd ?
  ptAction  POINT
  lParam    dd ?
ends

struct NM_CACHEHINT
  hdr	NMHDR
  iFrom dd ?
  iTo	dd ?
ends

struct NM_FINDITEM
  hdr	 NMHDR
  iStart dd ?
  lvfi	 LV_FINDINFO
ends

struct LV_DISPINFO
  hdr  NMHDR
  item LV_ITEM
ends

struct LV_KEYDOWN
  hdr	NMHDR
  wVKey dw ?
  flags dd ?
ends

struct TV_ITEM
  mask		 dd ?
  hItem 	 dd ?
  state 	 dd ?
  stateMask	 dd ?
  pszText	 dd ?
  cchTextMax	 dd ?
  iImage	 dd ?
  iSelectedImage dd ?
  cChildren	 dd ?
  lParam	 dd ?
ends

struct TV_INSERTSTRUCT
  hParent      dd ?
  hInsertAfter dd ?
  item	       TV_ITEM
ends

struct TV_HITTESTINFO
  pt	POINT
  flags dd ?
  hItem dd ?
ends

struct TV_SORTCB
  hParent     dd ?
  lpfnCompare dd ?
  lParam      dd ?
ends

struct NM_TREEVIEW
  hdr	  NMHDR
  action  dd ?
  itemOld TV_ITEM
  itemNew TV_ITEM
  ptDrag  POINT
ends

struct TV_DISPINFO
  hdr  NMHDR
  item TV_ITEM
ends

struct TV_KEYDOWN
  hdr	NMHDR
  wVKey dw ?
  flags dd ?
ends

struct TC_ITEMHEADER
  mask	      dd ?
  lpReserved1 dd ?
  lpReserved2 dd ?
  pszText     dd ?
  cchTextMax  dd ?
  iImage      dd ?
ends

struct TC_ITEM
  mask	      dd ?
  lpReserved1 dd ?
  lpReserved2 dd ?
  pszText     dd ?
  cchTextMax  dd ?
  iImage      dd ?
  lParam      dd ?
ends

struct TC_HITTESTINFO
  pt	POINT
  flags dd ?
ends

struct TC_KEYDOWN
  hdr	NMHDR
  wVKey dw ?
  flags dd ?
ends

struct MC_HITTESTINFO
  cbSize dd ?
  pt	 POINT
  uHit	 dd ?
  st	 SYSTEMTIME
ends

struct NM_SELCHANGE
  nmhdr      NMHDR
  stSelStart SYSTEMTIME
  stSelEnd   SYSTEMTIME
ends

struct NM_DAYSTATE
  nmhdr       NMHDR
  stStart     SYSTEMTIME
  cDayState   dd ?
  prgDayState dd ?
ends

struct NM_DATETIMECHANGE
  nmhdr   NMHDR
  dwFlags dd ?
  st	  SYSTEMTIME
ends

struct NM_DATETIMESTRING
  nmhdr 	NMHDR
  pszUserString dd ?
  st		SYSTEMTIME
  dwFlags	dd ?
ends

struct NM_DATETIMEWMKEYDOWN
  nmhdr     NMHDR
  nVirtKey  dd ?
  pszFormat dd ?
  st	    SYSTEMTIME
ends

struct NM_DATETIMEFORMAT
  nmhdr      NMHDR
  pszFormat  dd ?
  st	     SYSTEMTIME
  pszDisplay dd ?
  szDisplay  db 64 dup (?)
ends

struct NM_DATETIMEFORMATQUERY
  nmhdr     NMHDR
  pszFormat dd ?
  szMax     SIZE
ends

struct INITCOMMONCONTROLSEX
  dwSize dd ?
  dwICC  dd ?
ends

; Common control window classes

HOTKEY_CLASS	   equ 'msctls_hotkey32'
PROGRESS_CLASS	   equ 'msctls_progress32'
STATUS_CLASS	   equ 'msctls_statusbar32'
TRACKBAR_CLASS	   equ 'msctls_trackbar32'
UPDOWN_CLASS	   equ 'msctls_updown32'
TOOLTIPS_CLASS	   equ 'tooltips_class32'
ANIMATE_CLASS	   equ 'SysAnimate32'
HEADER_CLASS	   equ 'SysHeader32'
LISTVIEW_CLASS	   equ 'SysListView32'
TREEVIEW_CLASS	   equ 'SysTreeView32'
TABCONTROL_CLASS   equ 'SysTabControl32'
MONTHCAL_CLASS	   equ 'SysMonthCal32'
DATETIMEPICK_CLASS equ 'SysDateTimePick32'
TOOLBAR_CLASS	   equ 'ToolbarWindow32'
REBAR_CLASS	   equ 'ReBarWindow32'

; Ranges for control message IDs

LVM_FIRST = 1000h
TV_FIRST  = 1100h
HDM_FIRST = 1200h
TCM_FIRST = 1300h
MCM_FIRST = 1000h
DTM_FIRST = 1000h
CCM_FIRST = 2000h

; Ranges for control notification IDs

NM_FIRST   = 0
LVN_FIRST  = -100
PSN_FIRST  = -200
HDN_FIRST  = -300
TVN_FIRST  = -400
TTN_FIRST  = -520
TCN_FIRST  = -550
CDN_FIRST  = -601
TBN_FIRST  = -700
UDN_FIRST  = -721
MCN_FIRST  = -750
DTN_FIRST  = -760
CBEN_FIRST = -800
RBN_FIRST  = -831

; Generic notifications

NM_OUTOFMEMORY = NM_FIRST - 1
NM_CLICK       = NM_FIRST - 2
NM_DBLCLK      = NM_FIRST - 3
NM_RETURN      = NM_FIRST - 4
NM_RCLICK      = NM_FIRST - 5
NM_RDBLCLK     = NM_FIRST - 6
NM_SETFOCUS    = NM_FIRST - 7
NM_KILLFOCUS   = NM_FIRST - 8
NM_CUSTOMDRAW  = NM_FIRST - 12

; Common control styles

CCS_TOP 	  = 01h
CCS_NOMOVEY	  = 02h
CCS_BOTTOM	  = 03h
CCS_NORESIZE	  = 04h
CCS_NOPARENTALIGN = 08h
CCS_ADJUSTABLE	  = 20h
CCS_NODIVIDER	  = 40h
CCS_VERT	  = 80h
CCS_LEFT	  = CCS_VERT or CCS_TOP
CCS_RIGHT	  = CCS_VERT or CCS_BOTTOM
CCS_NOMOVEX	  = CCS_VERT or CCS_NOMOVEY

; Owner-drawn control types

ODT_HEADER   = 100
ODT_TAB      = 101
ODT_LISTVIEW = 102

; InitCommonControlsEx classes

ICC_ANIMATE_CLASS      = 0080h
ICC_BAR_CLASSES        = 0004h
ICC_COOL_CLASSES       = 0400h
ICC_DATE_CLASSES       = 0100h
ICC_HOTKEY_CLASS       = 0040h
ICC_INTERNET_CLASSES   = 0800h
ICC_LISTVIEW_CLASSES   = 0001h
ICC_PAGESCROLLER_CLASS = 1000h
ICC_PROGRESS_CLASS     = 0020h
ICC_TAB_CLASSES        = 0008h
ICC_TREEVIEW_CLASSES   = 0002h
ICC_UPDOWN_CLASS       = 0010h
ICC_USEREX_CLASSES     = 0200h
ICC_WIN95_CLASSES      = 00FFh

; Shared messages

CCM_SETCOLORSCHEME   = CCM_FIRST + 2
CCM_GETCOLORSCHEME   = CCM_FIRST + 3
CCM_GETDROPTARGET    = CCM_FIRST + 4
CCM_SETUNICODEFORMAT = CCM_FIRST + 5
CCM_GETUNICODEFORMAT = CCM_FIRST + 6

; Property sheet page flags

PSP_DEFAULT	 = 0000h
PSP_DLGINDIRECT  = 0001h
PSP_USEHICON	 = 0002h
PSP_USEICONID	 = 0004h
PSP_USETITLE	 = 0008h
PSP_HASHELP	 = 0020h
PSP_USEREFPARENT = 0040h
PSP_USECALLBACK  = 0080h

; Property sheet page actions

PSPCB_RELEASE = 1
PSPCB_CREATE  = 2

; Property sheet header flags

PSH_DEFAULT	  = 0000h
PSH_PROPTITLE	  = 0001h
PSH_USEHICON	  = 0002h
PSH_USEICONID	  = 0004h
PSH_PROPSHEETPAGE = 0008h
PSH_MULTILINETABS = 0010h
PSH_WIZARD	  = 0020h
PSH_USEPSTARTPAGE = 0040h
PSH_NOAPPLYNOW	  = 0080h
PSH_USECALLBACK   = 0100h
PSH_HASHELP	  = 0200h
PSH_MODELESS	  = 0400h

; Property sheet actions

PSCB_INITIALIZED  = 1

; Property sheet notifications

PSN_SETACTIVE	= PSN_FIRST - 0
PSN_KILLACTIVE	= PSN_FIRST - 1
PSN_APPLY	= PSN_FIRST - 2
PSN_RESET	= PSN_FIRST - 3
PSN_HELP	= PSN_FIRST - 5
PSN_WIZBACK	= PSN_FIRST - 6
PSN_WIZNEXT	= PSN_FIRST - 7
PSN_WIZFINISH	= PSN_FIRST - 8
PSN_QUERYCANCEL = PSN_FIRST - 9

; Property sheet return values

PSNRET_NOERROR		    = 0
PSNRET_INVALID		    = 1
PSNRET_INVALID_NOCHANGEPAGE = 2

; Property sheet messages

PSM_SETCURSEL	    = WM_USER + 101
PSM_REMOVEPAGE	    = WM_USER + 102
PSM_ADDPAGE	    = WM_USER + 103
PSM_CHANGED	    = WM_USER + 104
PSM_RESTARTWINDOWS  = WM_USER + 105
PSM_REBOOTSYSTEM    = WM_USER + 106
PSM_CANCELTOCLOSE   = WM_USER + 107
PSM_QUERYSIBLINGS   = WM_USER + 108
PSM_UNCHANGED	    = WM_USER + 109
PSM_APPLY	    = WM_USER + 110
PSM_SETTITLE	    = WM_USER + 111
PSM_SETTITLEW	    = WM_USER + 120
PSM_SETWIZBUTTONS   = WM_USER + 112
PSM_PRESSBUTTON     = WM_USER + 113
PSM_SETCURSELID     = WM_USER + 114
PSM_SETFINISHTEXT   = WM_USER + 115
PSM_SETFINISHTEXTW  = WM_USER + 121
PSM_GETTABCONTROL   = WM_USER + 116
PSM_ISDIALOGMESSAGE = WM_USER + 117

; Property sheet buttons

PSBTN_BACK	      = 0
PSBTN_NEXT	      = 1
PSBTN_FINISH	      = 2
PSBTN_OK	      = 3
PSBTN_APPLYNOW	      = 4
PSBTN_CANCEL	      = 5
PSBTN_HELP	      = 6
PSWIZB_BACK	      = 1
PSWIZB_NEXT	      = 2
PSWIZB_FINISH	      = 4
PSWIZB_DISABLEDFINISH = 8
ID_PSRESTARTWINDOWS   = 2
ID_PSREBOOTSYSTEM     = ID_PSRESTARTWINDOWS or 1

; Property sheet sizes

PROP_SM_CXDLG  = 212
PROP_SM_CYDLG  = 188
PROP_MED_CXDLG = 227
PROP_MED_CYDLG = 215
PROP_LG_CXDLG  = 252
PROP_LG_CYDLG  = 218
WIZ_CXDLG      = 276
WIZ_CYDLG      = 140
WIZ_CXBMP      = 80
WIZ_BODYX      = 92
WIZ_BODYCX     = 184

; Image list types

ILC_MASK     = 001h
ILC_COLOR    = 0FEh
ILC_COLORDDB = 0FEh
ILC_COLOR4   = 004h
ILC_COLOR8   = 008h
ILC_COLOR16  = 010h
ILC_COLOR24  = 018h
ILC_COLOR32  = 020h
ILC_PALETTE  = 800h

; Image list color values

CLR_NONE    = 0FFFFFFFFh
CLR_DEFAULT = 0FF000000h
CLR_HILIGHT = CLR_DEFAULT

; Image list drawing styles

ILD_NORMAL	= 0000h
ILD_TRANSPARENT = 0001h
ILD_MASK	= 0010h
ILD_IMAGE	= 0020h
ILD_BLEND25	= 0002h
ILD_BLEND50	= 0004h
ILD_OVERLAYMASK = 0F00h
ILD_SELECTED	= ILD_BLEND50
ILD_FOCUS	= ILD_BLEND25
ILD_BLEND	= ILD_BLEND50

; Header control styles

HDS_HORZ     = 00h
HDS_BUTTONS  = 02h
HDS_HOTTRACK = 04h
HDS_HIDDEN   = 08h
HDS_DRAGDROP = 40h
HDS_FULLDRAG = 80h

; Header control structure flags

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -