// Windows 编程相关常量,取值参考 Windows SDK 10.0.22000.0
package windows
const VK_ESCAPE: UInt16 = 0x1B
const CS_VREDRAW: UInt32 = 0x0001
const CS_HREDRAW: UInt32 = 0x0002
const CS_DBLCLKS: UInt32 = 0x0008
const CS_OWNDC: UInt32 = 0x0020
const CS_CLASSDC: UInt32 = 0x0040
const CS_PARENTDC: UInt32 = 0x0080
const CS_NOCLOSE: UInt32 = 0x0200
const CS_SAVEBITS: UInt32 = 0x0800
const CS_BYTEALIGNCLIENT: UInt32 = 0x1000
const CS_BYTEALIGNWINDOW: UInt32 = 0x2000
const CS_GLOBALCLASS: UInt32 = 0x4000
const SW_HIDE: Int32 = 0
const SW_SHOWNORMAL: Int32 = 1
const SW_NORMAL: Int32 = 1
const SW_SHOWMINIMIZED: Int32 = 2
const SW_SHOWMAXIMIZED: Int32 = 3
const SW_MAXIMIZE: Int32 = 3
const SW_SHOWNOACTIVATE: Int32 = 4
const SW_SHOW: Int32 = 5
const SW_MINIMIZE: Int32 = 6
const SW_SHOWMINNOACTIVE: Int32 = 7
const SW_SHOWNA: Int32 = 8
const SW_RESTORE: Int32 = 9
const SW_SHOWDEFAULT: Int32 = 10
const SW_FORCEMINIMIZE: Int32 = 11
const SW_MAX: Int32 = 11
const CW_USEDEFAULT: UInt32 = 0x80000000
const WS_OVERLAPPED: UInt32 = 0x00000000
const WS_POPUP: UInt32 = 0x80000000
const WS_CHILD: UInt32 = 0x40000000
const WS_MINIMIZE: UInt32 = 0x20000000
const WS_VISIBLE: UInt32 = 0x10000000
const WS_DISABLED: UInt32 = 0x08000000
const WS_CLIPSIBLINGS: UInt32 = 0x04000000
const WS_CLIPCHILDREN: UInt32 = 0x02000000
const WS_MAXIMIZE: UInt32 = 0x01000000
const WS_CAPTION: UInt32 = 0x00C00000
const WS_BORDER: UInt32 = 0x00800000
const WS_DLGFRAME: UInt32 = 0x00400000
const WS_VSCROLL: UInt32 = 0x00200000
const WS_HSCROLL: UInt32 = 0x00100000
const WS_SYSMENU: UInt32 = 0x00080000
const WS_THICKFRAME: UInt32 = 0x00040000
const WS_GROUP: UInt32 = 0x00020000
const WS_TABSTOP: UInt32 = 0x00010000
const WS_MINIMIZEBOX: UInt32 = 0x00020000
const WS_MAXIMIZEBOX: UInt32 = 0x00010000
const WS_OVERLAPPEDWINDOW = WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU |
WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX
const WS_POPUPWINDOW = WS_POPUP | WS_BORDER | WS_SYSMENU
const COLOR_SCROLLBAR: UInt64 = 0
const COLOR_BACKGROUND: UInt64 = 1
const COLOR_ACTIVECAPTION: UInt64 = 2
const COLOR_INACTIVECAPTION: UInt64 = 3
const COLOR_MENU: UInt64 = 4
const COLOR_WINDOW: UInt64 = 5
const COLOR_WINDOWFRAME: UInt64 = 6
const COLOR_MENUTEXT: UInt64 = 7
const COLOR_WINDOWTEXT: UInt64 = 8
const COLOR_CAPTIONTEXT: UInt64 = 9
const COLOR_ACTIVEBORDER: UInt64 = 10
const COLOR_INACTIVEBORDER: UInt64 = 11
const COLOR_APPWORKSPACE: UInt64 = 12
const COLOR_HIGHLIGHT: UInt64 = 13
const COLOR_HIGHLIGHTTEXT: UInt64 = 14
const COLOR_BTNFACE: UInt64 = 15
const COLOR_BTNSHADOW: UInt64 = 16
const COLOR_GRAYTEXT: UInt64 = 17
const COLOR_BTNTEXT: UInt64 = 18
const COLOR_INACTIVECAPTIONTEXT: UInt64 = 19
const COLOR_BTNHIGHLIGHT: UInt64 = 20
// WinUser.h 头文件中使用条件宏定义,兼容低版本 Windows 消息
// 本程序中暂不考虑低版本兼容,取 Windows 10 及以上版本支持的部分窗口消息
const WM_NULL: UInt32 = 0x0000
const WM_CREATE: UInt32 = 0x0001
const WM_DESTROY: UInt32 = 0x0002
const WM_MOVE: UInt32 = 0x0003
const WM_SIZE: UInt32 = 0x0005
const WM_ACTIVATE: UInt32 = 0x0006
const WM_SETFOCUS: UInt32 = 0x0007
const WM_KILLFOCUS: UInt32 = 0x0008
const WM_ENABLE: UInt32 = 0x000A
const WM_SETREDRAW: UInt32 = 0x000B
const WM_SETTEXT: UInt32 = 0x000C
const WM_GETTEXT: UInt32 = 0x000D
const WM_GETTEXTLENGTH: UInt32 = 0x000E
const WM_PAINT: UInt32 = 0x000F
const WM_CLOSE: UInt32 = 0x0010
const WM_QUERYENDSESSION: UInt32 = 0x0011
const WM_QUERYOPEN: UInt32 = 0x0013
const WM_ENDSESSION: UInt32 = 0x0016
const WM_QUIT: UInt32 = 0x0012
const WM_ERASEBKGND: UInt32 = 0x0014
const WM_SYSCOLORCHANGE: UInt32 = 0x0015
const WM_SHOWWINDOW: UInt32 = 0x0018
const WM_WININICHANGE: UInt32 = 0x001A
const WM_SETTINGCHANGE: UInt32 = 0x001A
const WM_DEVMODECHANGE: UInt32 = 0x001B
const WM_ACTIVATEAPP: UInt32 = 0x001C
const WM_FONTCHANGE: UInt32 = 0x001D
const WM_TIMECHANGE: UInt32 = 0x001E
const WM_CANCELMODE: UInt32 = 0x001F
const WM_SETCURSOR: UInt32 = 0x0020
const WM_MOUSEACTIVATE: UInt32 = 0x0021
const WM_CHILDACTIVATE: UInt32 = 0x0022
const WM_QUEUESYNC: UInt32 = 0x0023
const WM_GETMINMAXINFO: UInt32 = 0x0024
const WM_PAINTICON: UInt32 = 0x0026
const WM_ICONERASEBKGND: UInt32 = 0x0027
const WM_NEXTDLGCTL: UInt32 = 0x0028
const WM_SPOOLERSTATUS: UInt32 = 0x002A
const WM_DRAWITEM: UInt32 = 0x002B
const WM_MEASUREITEM: UInt32 = 0x002C
const WM_DELETEITEM: UInt32 = 0x002D
const WM_VKEYTOITEM: UInt32 = 0x002E
const WM_CHARTOITEM: UInt32 = 0x002F
const WM_SETFONT: UInt32 = 0x0030
const WM_GETFONT: UInt32 = 0x0031
const WM_SETHOTKEY: UInt32 = 0x0032
const WM_GETHOTKEY: UInt32 = 0x0033
const WM_QUERYDRAGICON: UInt32 = 0x0037
const WM_COMPAREITEM: UInt32 = 0x0039
const WM_GETOBJECT: UInt32 = 0x003D
const WM_COMPACTING: UInt32 = 0x0041
const WM_COMMNOTIFY: UInt32 = 0x0044
const WM_WINDOWPOSCHANGING: UInt32 = 0x0046
const WM_WINDOWPOSCHANGED: UInt32 = 0x0047
const WM_POWER: UInt32 = 0x0048
const WM_COPYDATA: UInt32 = 0x004A
const WM_CANCELJOURNAL: UInt32 = 0x004B
const WM_NOTIFY: UInt32 = 0x004E
const WM_INPUTLANGCHANGEREQUEST: UInt32 = 0x0050
const WM_INPUTLANGCHANGE: UInt32 = 0x0051
const WM_TCARD: UInt32 = 0x0052
const WM_HELP: UInt32 = 0x0053
const WM_USERCHANGED: UInt32 = 0x0054
const WM_NOTIFYFORMAT: UInt32 = 0x0055
const WM_CONTEXTMENU: UInt32 = 0x007B
const WM_STYLECHANGING: UInt32 = 0x007C
const WM_STYLECHANGED: UInt32 = 0x007D
const WM_DISPLAYCHANGE: UInt32 = 0x007E
const WM_GETICON: UInt32 = 0x007F
const WM_SETICON: UInt32 = 0x0080
const WM_NCCREATE: UInt32 = 0x0081
const WM_NCDESTROY: UInt32 = 0x0082
const WM_NCCALCSIZE: UInt32 = 0x0083
const WM_NCHITTEST: UInt32 = 0x0084
const WM_NCPAINT: UInt32 = 0x0085
const WM_NCACTIVATE: UInt32 = 0x0086
const WM_GETDLGCODE: UInt32 = 0x0087
const WM_SYNCPAINT: UInt32 = 0x0088
const WM_NCMOUSEMOVE: UInt32 = 0x00A0
const WM_NCLBUTTONDOWN: UInt32 = 0x00A1
const WM_NCLBUTTONUP: UInt32 = 0x00A2
const WM_NCLBUTTONDBLCLK: UInt32 = 0x00A3
const WM_NCRBUTTONDOWN: UInt32 = 0x00A4
const WM_NCRBUTTONUP: UInt32 = 0x00A5
const WM_NCRBUTTONDBLCLK: UInt32 = 0x00A6
const WM_NCMBUTTONDOWN: UInt32 = 0x00A7
const WM_NCMBUTTONUP: UInt32 = 0x00A8
const WM_NCMBUTTONDBLCLK: UInt32 = 0x00A9
const WM_NCXBUTTONDOWN: UInt32 = 0x00AB
const WM_NCXBUTTONUP: UInt32 = 0x00AC
const WM_NCXBUTTONDBLCLK: UInt32 = 0x00AD
const WM_INPUT_DEVICE_CHANGE: UInt32 = 0x00FE
const WM_INPUT: UInt32 = 0x00FF
const WM_KEYFIRST: UInt32 = 0x0100
const WM_KEYDOWN: UInt32 = 0x0100
const WM_KEYUP: UInt32 = 0x0101
const WM_CHAR: UInt32 = 0x0102
const WM_DEADCHAR: UInt32 = 0x0103
const WM_SYSKEYDOWN: UInt32 = 0x0104
const WM_SYSKEYUP: UInt32 = 0x0105
const WM_SYSCHAR: UInt32 = 0x0106
const WM_SYSDEADCHAR: UInt32 = 0x0107
const WM_UNICHAR: UInt32 = 0x0109
const WM_KEYLAST: UInt32 = 0x0109
const UNICODE_NOCHAR: UInt32 = 0xFFFF
const WM_IME_STARTCOMPOSITION: UInt32 = 0x010D
const WM_IME_ENDCOMPOSITION: UInt32 = 0x010E
const WM_IME_COMPOSITION: UInt32 = 0x010F
const WM_IME_KEYLAST: UInt32 = 0x010F
const WM_INITDIALOG: UInt32 = 0x0110
const WM_COMMAND: UInt32 = 0x0111
const WM_SYSCOMMAND: UInt32 = 0x0112
const WM_TIMER: UInt32 = 0x0113
const WM_HSCROLL: UInt32 = 0x0114
const WM_VSCROLL: UInt32 = 0x0115
const WM_INITMENU: UInt32 = 0x0116
const WM_INITMENUPOPUP: UInt32 = 0x0117
const WM_GESTURE: UInt32 = 0x0119
const WM_GESTURENOTIFY: UInt32 = 0x011A
const WM_MENUSELECT: UInt32 = 0x011F
const WM_MENUCHAR: UInt32 = 0x0120
const WM_ENTERIDLE: UInt32 = 0x0121
const WM_MENURBUTTONUP: UInt32 = 0x0122
const WM_MENUDRAG: UInt32 = 0x0123
const WM_MENUGETOBJECT: UInt32 = 0x0124
const WM_UNINITMENUPOPUP: UInt32 = 0x0125
const WM_MENUCOMMAND: UInt32 = 0x0126
const WM_CHANGEUISTATE: UInt32 = 0x0127
const WM_UPDATEUISTATE: UInt32 = 0x0128
const WM_QUERYUISTATE: UInt32 = 0x0129
const WM_CTLCOLORMSGBOX: UInt32 = 0x0132
const WM_CTLCOLOREDIT: UInt32 = 0x0133
const WM_CTLCOLORLISTBOX: UInt32 = 0x0134
const WM_CTLCOLORBTN: UInt32 = 0x0135
const WM_CTLCOLORDLG: UInt32 = 0x0136
const WM_CTLCOLORSCROLLBAR: UInt32 = 0x0137
const WM_CTLCOLORSTATIC: UInt32 = 0x0138
const MN_GETHMENU: UInt32 = 0x01E1
const WM_MOUSEFIRST: UInt32 = 0x0200
const WM_MOUSEMOVE: UInt32 = 0x0200
const WM_LBUTTONDOWN: UInt32 = 0x0201
const WM_LBUTTONUP: UInt32 = 0x0202
const WM_LBUTTONDBLCLK: UInt32 = 0x0203
const WM_RBUTTONDOWN: UInt32 = 0x0204
const WM_RBUTTONUP: UInt32 = 0x0205
const WM_RBUTTONDBLCLK: UInt32 = 0x0206
const WM_MBUTTONDOWN: UInt32 = 0x0207
const WM_MBUTTONUP: UInt32 = 0x0208
const WM_MBUTTONDBLCLK: UInt32 = 0x0209
const WM_MOUSEWHEEL: UInt32 = 0x020A
const WM_XBUTTONDOWN: UInt32 = 0x020B
const WM_XBUTTONUP: UInt32 = 0x020C
const WM_XBUTTONDBLCLK: UInt32 = 0x020D
const WM_MOUSEHWHEEL: UInt32 = 0x020E
const WM_MOUSELAST: UInt32 = 0x020E
const WM_PARENTNOTIFY: UInt32 = 0x0210
const WM_ENTERMENULOOP: UInt32 = 0x0211
const WM_EXITMENULOOP: UInt32 = 0x0212
const WM_NEXTMENU: UInt32 = 0x0213
const WM_SIZING: UInt32 = 0x0214
const WM_CAPTURECHANGED: UInt32 = 0x0215
const WM_MOVING: UInt32 = 0x0216
const WM_POWERBROADCAST: UInt32 = 0x0218
const WM_DEVICECHANGE: UInt32 = 0x0219
const WM_MDICREATE: UInt32 = 0x0220
const WM_MDIDESTROY: UInt32 = 0x0221
const WM_MDIACTIVATE: UInt32 = 0x0222
const WM_MDIRESTORE: UInt32 = 0x0223
const WM_MDINEXT: UInt32 = 0x0224
const WM_MDIMAXIMIZE: UInt32 = 0x0225
const WM_MDITILE: UInt32 = 0x0226
const WM_MDICASCADE: UInt32 = 0x0227
const WM_MDIICONARRANGE: UInt32 = 0x0228
const WM_MDIGETACTIVE: UInt32 = 0x0229
const WM_MDISETMENU: UInt32 = 0x0230
const WM_ENTERSIZEMOVE: UInt32 = 0x0231
const WM_EXITSIZEMOVE: UInt32 = 0x0232
const WM_DROPFILES: UInt32 = 0x0233
const WM_MDIREFRESHMENU: UInt32 = 0x0234
const WM_POINTERDEVICECHANGE: UInt32 = 0x238
const WM_POINTERDEVICEINRANGE: UInt32 = 0x239
const WM_POINTERDEVICEOUTOFRANGE: UInt32 = 0x23A
const WM_TOUCH: UInt32 = 0x0240
const WM_NCPOINTERUPDATE: UInt32 = 0x0241
const WM_NCPOINTERDOWN: UInt32 = 0x0242
const WM_NCPOINTERUP: UInt32 = 0x0243
const WM_POINTERUPDATE: UInt32 = 0x0245
const WM_POINTERDOWN: UInt32 = 0x0246
const WM_POINTERUP: UInt32 = 0x0247
const WM_POINTERENTER: UInt32 = 0x0249
const WM_POINTERLEAVE: UInt32 = 0x024A
const WM_POINTERACTIVATE: UInt32 = 0x024B
const WM_POINTERCAPTURECHANGED: UInt32 = 0x024C
const WM_TOUCHHITTESTING: UInt32 = 0x024D
const WM_POINTERWHEEL: UInt32 = 0x024E
const WM_POINTERHWHEEL: UInt32 = 0x024F
const DM_POINTERHITTEST: UInt32 = 0x0250
const WM_POINTERROUTEDTO: UInt32 = 0x0251
const WM_POINTERROUTEDAWAY: UInt32 = 0x0252
const WM_POINTERROUTEDRELEASED: UInt32 = 0x0253
const WM_IME_SETCONTEXT: UInt32 = 0x0281
const WM_IME_NOTIFY: UInt32 = 0x0282
const WM_IME_CONTROL: UInt32 = 0x0283
const WM_IME_COMPOSITIONFULL: UInt32 = 0x0284
const WM_IME_SELECT: UInt32 = 0x0285
const WM_IME_CHAR: UInt32 = 0x0286
const WM_IME_REQUEST: UInt32 = 0x0288
const WM_IME_KEYDOWN: UInt32 = 0x0290
const WM_IME_KEYUP: UInt32 = 0x0291
const WM_MOUSEHOVER: UInt32 = 0x02A1
const WM_MOUSELEAVE: UInt32 = 0x02A3
const WM_NCMOUSEHOVER: UInt32 = 0x02A0
const WM_NCMOUSELEAVE: UInt32 = 0x02A2
const WM_WTSSESSION_CHANGE: UInt32 = 0x02B1
const WM_TABLET_FIRST: UInt32 = 0x02c0
const WM_TABLET_LAST: UInt32 = 0x02df
const WM_DPICHANGED: UInt32 = 0x02E0
const WM_DPICHANGED_BEFOREPARENT: UInt32 = 0x02E2
const WM_DPICHANGED_AFTERPARENT: UInt32 = 0x02E3
const WM_GETDPISCALEDSIZE: UInt32 = 0x02E4
const WM_CUT: UInt32 = 0x0300
const WM_COPY: UInt32 = 0x0301
const WM_PASTE: UInt32 = 0x0302
const WM_CLEAR: UInt32 = 0x0303
const WM_UNDO: UInt32 = 0x0304
const WM_RENDERFORMAT: UInt32 = 0x0305
const WM_RENDERALLFORMATS: UInt32 = 0x0306
const WM_DESTROYCLIPBOARD: UInt32 = 0x0307
const WM_DRAWCLIPBOARD: UInt32 = 0x0308
const WM_PAINTCLIPBOARD: UInt32 = 0x0309
const WM_VSCROLLCLIPBOARD: UInt32 = 0x030A
const WM_SIZECLIPBOARD: UInt32 = 0x030B
const WM_ASKCBFORMATNAME: UInt32 = 0x030C
const WM_CHANGECBCHAIN: UInt32 = 0x030D
const WM_HSCROLLCLIPBOARD: UInt32 = 0x030E
const WM_QUERYNEWPALETTE: UInt32 = 0x030F
const WM_PALETTEISCHANGING: UInt32 = 0x0310
const WM_PALETTECHANGED: UInt32 = 0x0311
const WM_HOTKEY: UInt32 = 0x0312
const WM_PRINT: UInt32 = 0x0317
const WM_PRINTCLIENT: UInt32 = 0x0318
const WM_APPCOMMAND: UInt32 = 0x0319
const WM_THEMECHANGED: UInt32 = 0x031A
const WM_CLIPBOARDUPDATE: UInt32 = 0x031D
const WM_DWMCOMPOSITIONCHANGED: UInt32 = 0x031E
const WM_DWMNCRENDERINGCHANGED: UInt32 = 0x031F
const WM_DWMCOLORIZATIONCOLORCHANGED: UInt32 = 0x0320
const WM_DWMWINDOWMAXIMIZEDCHANGE: UInt32 = 0x0321
const WM_DWMSENDICONICTHUMBNAIL: UInt32 = 0x0323
const WM_DWMSENDICONICLIVEPREVIEWBITMAP: UInt32 = 0x0326
const WM_GETTITLEBARINFOEX: UInt32 = 0x033F
const WM_HANDHELDFIRST: UInt32 = 0x0358
const WM_HANDHELDLAST: UInt32 = 0x035F
const WM_AFXFIRST: UInt32 = 0x0360
const WM_AFXLAST: UInt32 = 0x037F
const WM_PENWINFIRST: UInt32 = 0x0380
const WM_PENWINLAST: UInt32 = 0x038F
const WM_APP: UInt32 = 0x8000
const WM_USER: UInt32 = 0x0400