quickwin 2.3.1 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +1 -2
- package/README.md +1 -2
- package/constants.ts +15 -0
- package/enum_map.d.ts +3 -0
- package/examples/PdfCanvas.js +1 -1
- package/examples/PdfCanvas.tsx +2 -2
- package/examples/execd/main.js +334 -188
- package/examples/pdf_preview2.js +76 -67
- package/examples/pdf_preview2.ts +84 -64
- package/examples/pdf_viewer.js +4932 -1029
- package/examples/pdf_viewer.tsx +11 -22
- package/examples/test_gallery.js +308 -143
- package/examples/test_gallery.tsx +12 -7
- package/examples/test_react_lazy.js +295 -133
- package/examples/test_react_lazy.tsx +4 -3
- package/examples/test_react_listbox.js +293 -132
- package/examples/test_react_listbox.tsx +3 -2
- package/examples/test_root_window.js +283 -126
- package/examples/test_tab.js +295 -133
- package/examples/test_tab.tsx +4 -3
- package/examples/tray_demo.js +37 -30
- package/examples/tray_demo.tsx +39 -32
- package/lib/abort.d.ts +21 -0
- package/lib/assert.d.ts +2 -0
- package/lib/bitmap.d.ts +7 -0
- package/lib/bitmap.js +40 -0
- package/lib/cache-utils.d.ts +6 -0
- package/lib/certs.d.ts +1 -0
- package/lib/certs.js +31 -3
- package/lib/dpi.d.ts +9 -0
- package/lib/dpi.js +30 -0
- package/lib/dumpRects.d.ts +2 -0
- package/lib/dumpRects.js +14 -7
- package/lib/exec-log.d.ts +23 -0
- package/lib/fetch.d.ts +4 -0
- package/lib/ffi/bind.d.ts +70 -0
- package/lib/ffi/bind.js +5 -4
- package/lib/ffi/ctype.d.ts +117 -0
- package/lib/ffi/index.d.ts +2 -0
- package/lib/ffi/struct.d.ts +174 -0
- package/lib/http-common.d.ts +143 -0
- package/lib/http-server.d.ts +59 -0
- package/lib/polyfill.d.ts +22 -0
- package/lib/react-qw/components/Button.d.ts +9 -0
- package/lib/react-qw/components/CheckBox.d.ts +11 -0
- package/lib/react-qw/components/ComboBox.d.ts +11 -0
- package/lib/react-qw/components/DateTimePicker.d.ts +15 -0
- package/lib/react-qw/components/DateTimePicker.js +6 -7
- package/lib/react-qw/components/Input.d.ts +15 -0
- package/lib/react-qw/components/Input.js +5 -1
- package/lib/react-qw/components/Link.d.ts +12 -0
- package/lib/react-qw/components/ListBox.d.ts +13 -0
- package/lib/react-qw/components/ListView.d.ts +37 -0
- package/lib/react-qw/components/ListView.js +8 -6
- package/lib/react-qw/components/PathPicker.d.ts +23 -0
- package/lib/react-qw/components/ProgressBar.d.ts +9 -0
- package/lib/react-qw/components/RadioButton.d.ts +11 -0
- package/lib/react-qw/components/ScrollView.d.ts +9 -0
- package/lib/react-qw/components/ScrollView.js +28 -22
- package/lib/react-qw/components/Slider.d.ts +12 -0
- package/lib/react-qw/components/Tab.d.ts +14 -0
- package/lib/react-qw/components/Tooltip.d.ts +7 -0
- package/lib/react-qw/components/TreeView.d.ts +18 -0
- package/lib/react-qw/components/index.d.ts +16 -0
- package/lib/react-qw/index.d.ts +24 -0
- package/lib/react-qw/index.js +7 -5
- package/lib/react-qw/layout.d.ts +29 -0
- package/lib/react-qw/nmhdr.d.ts +1 -0
- package/lib/react-qw/props.d.ts +2 -0
- package/lib/react-qw/props.js +3 -3
- package/lib/react-qw/reconciler.d.ts +21 -0
- package/lib/react-qw/reconciler.js +12 -17
- package/lib/stream.d.ts +20 -0
- package/lib/text-codec.d.ts +39 -0
- package/lib/text-measure.d.ts +14 -0
- package/lib/text-measure.js +9 -6
- package/lib/url.d.ts +54 -0
- package/lib/websocket.d.ts +73 -0
- package/lib/windows/{advapi32.ts → advapi32.d.ts} +6 -21
- package/lib/windows/comctl32.d.ts +14 -0
- package/lib/windows/comctl32.js +3 -2
- package/lib/windows/comdlg32.d.ts +4 -0
- package/lib/windows/{gdi32.ts → gdi32.d.ts} +184 -97
- package/lib/windows/gdi32.js +28 -6
- package/lib/windows/{kernel32.ts → kernel32.d.ts} +145 -113
- package/lib/windows/kernel32.js +9 -0
- package/lib/windows/{msimg32.ts → msimg32.d.ts} +11 -14
- package/lib/windows/ntdll.d.ts +5 -0
- package/lib/windows/ole32.d.ts +3 -0
- package/lib/windows/{psapi.ts → psapi.d.ts} +9 -18
- package/lib/windows/shell32.d.ts +51 -0
- package/lib/windows/shell32.js +11 -2
- package/lib/windows/structs.d.ts +3141 -0
- package/lib/windows/structs.js +51 -0
- package/lib/windows/user32.d.ts +623 -0
- package/lib/windows/user32.js +6 -5
- package/lib/windows/version.d.ts +27 -0
- package/lib/windows/{winspool.ts → winspool.d.ts} +18 -32
- package/main.js +13 -5
- package/package.json +16 -7
- package/quickwin.d.ts +13 -115
- package/qwin-nowasm-x86.exe +0 -0
- package/qwin-nowasm.exe +0 -0
- package/qwin-x86.exe +0 -0
- package/qwin.exe +0 -0
- package/test/bench_ffi_callraw.js +3 -4
- package/test/bench_ffi_callraw.ts +3 -4
- package/test/debug/mupdf_debug.js +4 -22
- package/test/debug/wasm_export_debug.js +2 -12
- package/test/debug/wasm_names.js +3 -13
- package/test/example.pdf +0 -0
- package/test/mupdf-cdn.js +40 -0
- package/test/mupdf-cdn.ts +43 -0
- package/test/test_ffi.js +8 -9
- package/test/test_ffi.ts +8 -9
- package/test/test_ffi_abi.js +6 -6
- package/test/test_ffi_abi.ts +8 -8
- package/test/test_ffi_windows.js +82 -11
- package/test/test_ffi_windows.ts +85 -11
- package/test/test_gdi_draw.js +3 -3
- package/test/test_gdi_draw.ts +4 -4
- package/test/test_mupdf_render.js +4 -22
- package/test/test_mupdf_render.ts +4 -23
- package/test/test_mupdf_twice.js +4 -19
- package/test/test_mupdf_twice.ts +4 -20
- package/test/test_mupdf_wasm.js +10 -4
- package/test/test_mupdf_wasm.ts +6 -4
- package/test/test_react_complex.js +316 -140
- package/test/test_react_counter.js +295 -133
- package/test/test_react_flex.js +297 -138
- package/test/test_react_hidden.js +296 -134
- package/test/test_react_listview_link.js +288 -131
- package/test/test_react_notify.js +290 -133
- package/test/test_react_render.js +295 -133
- package/lib/abort.ts +0 -69
- package/lib/assert.ts +0 -7
- package/lib/cache-utils.ts +0 -40
- package/lib/certs.ts +0 -229
- package/lib/dumpRects.ts +0 -26
- package/lib/exec-log.ts +0 -30
- package/lib/fetch.ts +0 -589
- package/lib/ffi/bind.ts +0 -539
- package/lib/ffi/ctype.ts +0 -371
- package/lib/ffi/index.ts +0 -6
- package/lib/ffi/struct.ts +0 -780
- package/lib/http-common.ts +0 -441
- package/lib/http-server.ts +0 -604
- package/lib/polyfill.ts +0 -171
- package/lib/react-qw/components/index.ts +0 -17
- package/lib/react-qw/index.ts +0 -96
- package/lib/react-qw/layout.ts +0 -111
- package/lib/react-qw/nmhdr.ts +0 -7
- package/lib/react-qw/props.ts +0 -41
- package/lib/react-qw/reconciler.ts +0 -383
- package/lib/stream.ts +0 -22
- package/lib/text-codec.ts +0 -171
- package/lib/text-measure.ts +0 -41
- package/lib/url.ts +0 -201
- package/lib/websocket.ts +0 -600
- package/lib/windows/comctl32.ts +0 -19
- package/lib/windows/comdlg32.ts +0 -10
- package/lib/windows/ntdll.ts +0 -11
- package/lib/windows/ole32.ts +0 -9
- package/lib/windows/shell32.ts +0 -39
- package/lib/windows/structs.ts +0 -752
- package/lib/windows/user32.ts +0 -619
- package/lib/windows/version.ts +0 -35
- package/vendor/mupdf-wasm/mupdf-wasm.d.ts +0 -571
- package/vendor/mupdf-wasm/mupdf-wasm.js +0 -2749
- package/vendor/mupdf-wasm/mupdf-wasm.wasm +0 -0
- package/vendor/mupdf-wasm/mupdf.d.ts +0 -939
- package/vendor/mupdf-wasm/mupdf.js +0 -3317
|
@@ -0,0 +1,623 @@
|
|
|
1
|
+
/** 创建窗口
|
|
2
|
+
* @returns 窗口句柄;失败 → NULL
|
|
3
|
+
* @param args_0 dwExStyle WS_EX_*
|
|
4
|
+
* @param args_1 lpClassName 窗口类名 string 或 NULL
|
|
5
|
+
* @param args_2 lpWindowName 窗口标题 string 或 NULL
|
|
6
|
+
* @param args_3 dwStyle WS_*(WindowStyle 类常量)
|
|
7
|
+
* @param args_4 x 初始左上角(CW_USEDEFAULT = -1)
|
|
8
|
+
* @param args_5 y 初始左上角(CW_USEDEFAULT = -1)
|
|
9
|
+
* @param args_6 nWidth
|
|
10
|
+
* @param args_7 nHeight
|
|
11
|
+
* @param args_8 hWndParent 父窗口(可 NULL)
|
|
12
|
+
* @param args_9 hMenu 菜单句柄或子窗口 ID(可 NULL)
|
|
13
|
+
* @param args_10 hInstance 模块句柄(可 NULL)
|
|
14
|
+
* @param args_11 lpParam 窗口创建参数,传 NULL */
|
|
15
|
+
export declare const CreateWindowEx: (args_0: number, args_1: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_2: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_3: number, args_4: number, args_5: number, args_6: number, args_7: number, args_8: import("../ffi/ctype.js").MaybePtr<"HWND">, args_9: import("../ffi/ctype.js").MaybePtr<"HMENU">, args_10: import("../ffi/ctype.js").MaybePtr<"HMODULE">, args_11: import("../ffi/ctype.js").MaybePtr<"">) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
16
|
+
/** 销毁窗口
|
|
17
|
+
* @returns 成功 → 非 0
|
|
18
|
+
* @param args_0 hWnd */
|
|
19
|
+
export declare const DestroyWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
20
|
+
/** 显示/隐藏窗口(nCmdShow = WindowStyle 类常量)
|
|
21
|
+
* @returns 先前可见性
|
|
22
|
+
* @param args_0 hWnd
|
|
23
|
+
* @param args_1 nCmdShow 显示命令(SW_SHOW/SW_HIDE 等) */
|
|
24
|
+
export declare const ShowWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../../constants.js").ShowWindowCmd) => number;
|
|
25
|
+
/** 移动/缩放窗口
|
|
26
|
+
* @returns 成功 → 非 0;失败 → 0(原因见 GetLastError)
|
|
27
|
+
* @param args_0 hWnd
|
|
28
|
+
* @param args_1 x 新左上角
|
|
29
|
+
* @param args_2 y 新左上角
|
|
30
|
+
* @param args_3 nWidth 新宽度
|
|
31
|
+
* @param args_4 nHeight 新高度
|
|
32
|
+
* @param args_5 bRepaint 非 0 立即重绘 */
|
|
33
|
+
export declare const MoveWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: number, args_2: number, args_3: number, args_4: number, args_5: number) => number;
|
|
34
|
+
/** 设窗口位置/层级
|
|
35
|
+
* @returns 成功 → 非 0;失败 → 0(原因见 GetLastError)
|
|
36
|
+
* @param args_0 hWnd
|
|
37
|
+
* @param args_1 hWndInsertAfter 置前窗口或 HWND_TOP(-1)/BOTTOM(-2)/NOTOPMOST(-2) 常量
|
|
38
|
+
* @param args_2 x 新位置
|
|
39
|
+
* @param args_3 y 新位置
|
|
40
|
+
* @param args_4 cx 新宽度
|
|
41
|
+
* @param args_5 cy 新高度
|
|
42
|
+
* @param args_6 uFlags SWP_* 标志(SWP_NOMOVE=0x2/SWP_NOSIZE=0x1 等) */
|
|
43
|
+
export declare const SetWindowPos: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../../constants.js").SetWindowPosHwnd, args_2: number, args_3: number, args_4: number, args_5: number, args_6: number) => number;
|
|
44
|
+
/** 取窗口外框矩形(屏幕坐标)
|
|
45
|
+
* @returns 成功 → 非 0;失败 → 0(原因见 GetLastError)
|
|
46
|
+
* @param args_0 hWnd
|
|
47
|
+
* @param args_1 lpRect 出参槽,传 RECT.alloc().ptr、RECT.decode 读回 */
|
|
48
|
+
export declare const GetWindowRect: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"RECT">) => number;
|
|
49
|
+
/** 取窗口客户区矩形
|
|
50
|
+
* @returns 成功 → 非 0;失败 → 0(原因见 GetLastError)
|
|
51
|
+
* @param args_0 hWnd
|
|
52
|
+
* @param args_1 lpRect 出参槽,传 RECT.alloc().ptr、RECT.decode 读回 */
|
|
53
|
+
export declare const GetClientRect: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"RECT">) => number;
|
|
54
|
+
/** 是否有效窗口句柄
|
|
55
|
+
* @returns 是 → 非 0
|
|
56
|
+
* @param args_0 hWnd */
|
|
57
|
+
export declare const IsWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
58
|
+
/** 窗口是否可见
|
|
59
|
+
* @returns 是 → 非 0
|
|
60
|
+
* @param args_0 hWnd */
|
|
61
|
+
export declare const IsWindowVisible: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
62
|
+
/** 窗口是否最小化
|
|
63
|
+
* @returns 是 → 非 0
|
|
64
|
+
* @param args_0 hWnd */
|
|
65
|
+
export declare const IsIconic: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
66
|
+
/** 取前台窗口
|
|
67
|
+
* @returns 前台窗口句柄;无 → NULL */
|
|
68
|
+
export declare const GetForegroundWindow: () => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
69
|
+
/** 请求设前台窗口
|
|
70
|
+
* @returns 成功 → 非 0
|
|
71
|
+
* @param args_0 hWnd 目标窗口 */
|
|
72
|
+
export declare const SetForegroundWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
73
|
+
/** 取桌面窗口
|
|
74
|
+
* @returns 桌面窗口句柄(恒非 NULL) */
|
|
75
|
+
export declare const GetDesktopWindow: () => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
76
|
+
/** 按类名+标题查找顶层窗口
|
|
77
|
+
* @returns 窗口句柄;无 → NULL
|
|
78
|
+
* @param args_0 lpClassName 窗口类名 string 或 NULL
|
|
79
|
+
* @param args_1 lpWindowName 窗口标题 string 或 NULL */
|
|
80
|
+
export declare const FindWindow: (args_0: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_1: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
81
|
+
/** 在 hWndParent 的子窗口链里按类名+标题查找,从 hWndChildAfter 之后开始;
|
|
82
|
+
* 链式遍历:FindWindowEx(NULL, prev, NULL, NULL)
|
|
83
|
+
* @returns 窗口句柄;无更多窗口 → NULL
|
|
84
|
+
* @param args_0 hWndParent 父窗口,NULL = 遍历顶层
|
|
85
|
+
* @param args_1 hWndChildAfter 起始子窗口,NULL = 从头
|
|
86
|
+
* @param args_2 lpszClass 类名 string 或 NULL = 不过滤
|
|
87
|
+
* @param args_3 lpszWindow 标题 string 或 NULL = 不过滤 */
|
|
88
|
+
export declare const FindWindowEx: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"HWND">, args_2: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_3: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
89
|
+
/** 取窗口标题
|
|
90
|
+
* @returns 写入字符数,不含 NUL
|
|
91
|
+
* @param args_0 hWnd
|
|
92
|
+
* @param args_1 lpString 出参缓冲,传 WCHAR.alloc(n)、WCHAR.decode(buf) 读回
|
|
93
|
+
* @param args_2 nMaxCount 缓冲容量(字符数,含 NUL 余量) */
|
|
94
|
+
export declare const GetWindowText: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").PtrArrayBuffer<any> | import("../ffi/ctype.js").MaybePtr<"BYTE">, args_2: number) => number;
|
|
95
|
+
/** 设窗口标题(传 string 或 NULL 清空)
|
|
96
|
+
* @returns 成功 → 非 0
|
|
97
|
+
* @param args_0 hWnd
|
|
98
|
+
* @param args_1 lpString 新标题 string 或 NULL */
|
|
99
|
+
export declare const SetWindowText: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">) => number;
|
|
100
|
+
/** 取窗口标题长度
|
|
101
|
+
* @returns 标题长度(字符数,不含 NUL)
|
|
102
|
+
* @param args_0 hWnd */
|
|
103
|
+
export declare const GetWindowTextLength: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
104
|
+
/** 取窗口类名
|
|
105
|
+
* @returns 写入字符数
|
|
106
|
+
* @param args_0 hWnd
|
|
107
|
+
* @param args_1 lpClassName 出参缓冲,传 WCHAR.alloc(n)、WCHAR.decode(buf) 读回
|
|
108
|
+
* @param args_2 nMaxCount 缓冲容量(字符数) */
|
|
109
|
+
export declare const GetClassName: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").PtrArrayBuffer<any> | import("../ffi/ctype.js").MaybePtr<"BYTE">, args_2: number) => number;
|
|
110
|
+
/** 取窗口附加数据(ia32 走 GetWindowLongW)
|
|
111
|
+
* @returns 附加数据值;0 保真(值有符号读)
|
|
112
|
+
* @param args_0 hWnd
|
|
113
|
+
* @param args_1 nIndex 索引(GWLP_WNDPROC/GWLP_USERDATA/GWL_STYLE 等) */
|
|
114
|
+
export declare const GetWindowLongPtr: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../../constants.js").Gwlp) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
115
|
+
/** 设窗口附加数据
|
|
116
|
+
* @returns 先前值(0 保真,值有符号读)
|
|
117
|
+
* @param args_0 hWnd
|
|
118
|
+
* @param args_1 nIndex 索引(GWLP_* / GWL_*)
|
|
119
|
+
* @param args_2 dwNewLong 新值(整数或指针混合值) */
|
|
120
|
+
export declare const SetWindowLongPtr: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../../constants.js").Gwlp, args_2: import("../ffi/ctype.js").MaybePtr<"">) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
121
|
+
/** 取窗口所属线程(第二参可传 NULL 不取进程 ID)
|
|
122
|
+
* @returns 线程 ID
|
|
123
|
+
* @param args_0 hWnd
|
|
124
|
+
* @param args_1 lpdwProcessId 出参槽,传 Uint32Array(1).buffer 或 NULL */
|
|
125
|
+
export declare const GetWindowThreadProcessId: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").PtrArrayBuffer<any> | import("../ffi/ctype.js").MaybePtr<"BYTE">) => number;
|
|
126
|
+
/** 启用/禁用窗口输入
|
|
127
|
+
* @returns 先前状态
|
|
128
|
+
* @param args_0 hWnd
|
|
129
|
+
* @param args_1 bEnable 非 0 启用 */
|
|
130
|
+
export declare const EnableWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: number) => number;
|
|
131
|
+
/** 取父窗口
|
|
132
|
+
* @returns 父窗口句柄;无 → NULL
|
|
133
|
+
* @param args_0 hWnd */
|
|
134
|
+
export declare const GetParent: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
135
|
+
/** 设父窗口
|
|
136
|
+
* @returns 先前父窗口
|
|
137
|
+
* @param args_0 hWndChild 子窗口
|
|
138
|
+
* @param args_1 hWndNewParent 新父窗口 */
|
|
139
|
+
export declare const SetParent: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"HWND">) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
140
|
+
/** 按关系取相邻窗口
|
|
141
|
+
* @returns 窗口句柄;无 → NULL
|
|
142
|
+
* @param args_0 hWnd
|
|
143
|
+
* @param args_1 uCmd 关系(GW_CHILD=4/GW_HWNDNEXT=2/GW_OWNER=4 等 GW_*) */
|
|
144
|
+
export declare const GetWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../../constants.js").GetWindowCmd) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
145
|
+
/** 注册窗口类
|
|
146
|
+
* @returns 类 ATOM;失败 → 0
|
|
147
|
+
* @param args_0 lpwcx WNDCLASSEXW.encode({ cbSize: WNDCLASSEXW.size, ... }).ptr(见 structs.ts) */
|
|
148
|
+
export declare const RegisterClassEx: (args_0: {
|
|
149
|
+
cbClsExtra?: number | undefined;
|
|
150
|
+
cbSize?: number | undefined;
|
|
151
|
+
cbWndExtra?: number | undefined;
|
|
152
|
+
hCursor?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
153
|
+
hIcon?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
154
|
+
hIconSm?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
155
|
+
hInstance?: import("../ffi/ctype.js").MaybePtr<"HMODULE"> | undefined;
|
|
156
|
+
hbrBackground?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
157
|
+
lpfnWndProc?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
158
|
+
lpszClassName?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
159
|
+
lpszMenuName?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
160
|
+
style?: number | undefined;
|
|
161
|
+
} | import("../ffi/ctype.js").MaybePtr<"WNDCLASSEXW">) => number;
|
|
162
|
+
/** 设输入焦点
|
|
163
|
+
* @returns 先前焦点窗口
|
|
164
|
+
* @param args_0 hWnd 接收焦点的窗口 */
|
|
165
|
+
export declare const SetFocus: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
166
|
+
/** 取调用线程输入焦点
|
|
167
|
+
* @returns 焦点窗口句柄;无 → NULL */
|
|
168
|
+
export declare const GetFocus: () => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
169
|
+
/** 取调用线程激活窗口
|
|
170
|
+
* @returns 激活窗口句柄;无 → NULL */
|
|
171
|
+
export declare const GetActiveWindow: () => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
172
|
+
/** 设调用线程激活窗口
|
|
173
|
+
* @returns 先前窗口
|
|
174
|
+
* @param args_0 hWnd */
|
|
175
|
+
export declare const SetActiveWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
176
|
+
/** 取消息(阻塞式);分发前先 TranslateMessage
|
|
177
|
+
* @returns -1 = 出错、0 = WM_QUIT、>0 = 有消息
|
|
178
|
+
* @param args_0 lpMsg MSG 出参缓冲(MSG.alloc().ptr,品牌位不收裸 PAB)
|
|
179
|
+
* @param args_1 hWndFilter 窗口过滤,可 NULL
|
|
180
|
+
* @param args_2 wMsgFilterMin 消息下限,0 = 不过滤
|
|
181
|
+
* @param args_3 wMsgFilterMax 消息上限,0 = 不过滤 */
|
|
182
|
+
export declare const GetMessage: (args_0: import("../ffi/ctype.js").MaybePtr<"MSG">, args_1: import("../ffi/ctype.js").MaybePtr<"HWND">, args_2: number, args_3: number) => number;
|
|
183
|
+
/** 非阻塞查消息
|
|
184
|
+
* @returns 有消息 → 非 0
|
|
185
|
+
* @param args_0 lpMsg MSG 出参缓冲
|
|
186
|
+
* @param args_1 hWndFilter 窗口过滤,可 NULL
|
|
187
|
+
* @param args_2 wMsgFilterMin 消息下限,0 = 不过滤
|
|
188
|
+
* @param args_3 wMsgFilterMax 消息上限,0 = 不过滤
|
|
189
|
+
* @param args_4 wRemoveMsg PM_NOREMOVE(0) / PM_REMOVE(1) */
|
|
190
|
+
export declare const PeekMessage: (args_0: import("../ffi/ctype.js").MaybePtr<"MSG">, args_1: import("../ffi/ctype.js").MaybePtr<"HWND">, args_2: number, args_3: number, args_4: number) => number;
|
|
191
|
+
/** 把 WM_KEYDOWN/UP 转成字符消息(翻译结果留在队列)
|
|
192
|
+
* @returns 可翻译 → 非 0
|
|
193
|
+
* @param args_0 lpMsg 取到的 MSG 缓冲(GetMessage/PeekMessage 的出参) */
|
|
194
|
+
export declare const TranslateMessage: (args_0: {
|
|
195
|
+
hwnd?: import("../ffi/ctype.js").MaybePtr<"HWND"> | undefined;
|
|
196
|
+
lParam?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
197
|
+
message?: number | undefined;
|
|
198
|
+
pt?: {
|
|
199
|
+
x?: number | undefined;
|
|
200
|
+
y?: number | undefined;
|
|
201
|
+
} | undefined;
|
|
202
|
+
time?: number | undefined;
|
|
203
|
+
wParam?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
204
|
+
} | import("../ffi/ctype.js").MaybePtr<"MSG">) => number;
|
|
205
|
+
/** 分发 MSG 给窗口过程
|
|
206
|
+
* @returns 处理结果(0 保真,有符号读)
|
|
207
|
+
* @param args_0 lpMsg MSG 缓冲(GetMessage/PeekMessage 的出参) */
|
|
208
|
+
export declare const DispatchMessage: (args_0: {
|
|
209
|
+
hwnd?: import("../ffi/ctype.js").MaybePtr<"HWND"> | undefined;
|
|
210
|
+
lParam?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
211
|
+
message?: number | undefined;
|
|
212
|
+
pt?: {
|
|
213
|
+
x?: number | undefined;
|
|
214
|
+
y?: number | undefined;
|
|
215
|
+
} | undefined;
|
|
216
|
+
time?: number | undefined;
|
|
217
|
+
wParam?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
218
|
+
} | import("../ffi/ctype.js").MaybePtr<"MSG">) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
219
|
+
/** 异步投递消息到窗口线程队列
|
|
220
|
+
* @returns 成功 → 非 0
|
|
221
|
+
* @param args_0 hWnd 目标窗口
|
|
222
|
+
* @param args_1 Msg 消息号(WM_*)
|
|
223
|
+
* @param args_2 wParam 消息参数(混合位)
|
|
224
|
+
* @param args_3 lParam 消息参数(混合位) */
|
|
225
|
+
export declare const PostMessage: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../../constants.js").HdmMsg | import("../../constants.js").ButtonExtMsg | import("../../constants.js").ButtonMsg | import("../../constants.js").ComboBoxMsg | import("../../constants.js").DtMsg | import("../../constants.js").EditMsg | import("../../constants.js").LbMsg | import("../../constants.js").LvMsg | import("../../constants.js").ProgressMsg | import("../../constants.js").StaticMsg | import("../../constants.js").SysLinkMsg | import("../../constants.js").TbMsg | import("../../constants.js").TcMsg | import("../../constants.js").TtMsg | import("../../constants.js").TvMsg | import("../../constants.js").WmMsg, args_2: import("../ffi/ctype.js").MaybePtr<"">, args_3: import("../ffi/ctype.js").MaybePtr<"">) => number;
|
|
226
|
+
/** 同步发送消息并等窗口过程处理
|
|
227
|
+
* @returns 处理结果(0 保真,有符号读)
|
|
228
|
+
* @param args_0 hWnd 目标窗口
|
|
229
|
+
* @param args_1 Msg 消息号(WM_*)
|
|
230
|
+
* @param args_2 wParam 消息参数(整数或缓冲指针)
|
|
231
|
+
* @param args_3 lParam 消息参数(整数或缓冲指针) */
|
|
232
|
+
export declare const SendMessage: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../../constants.js").HdmMsg | import("../../constants.js").ButtonExtMsg | import("../../constants.js").ButtonMsg | import("../../constants.js").ComboBoxMsg | import("../../constants.js").DtMsg | import("../../constants.js").EditMsg | import("../../constants.js").LbMsg | import("../../constants.js").LvMsg | import("../../constants.js").ProgressMsg | import("../../constants.js").StaticMsg | import("../../constants.js").SysLinkMsg | import("../../constants.js").TbMsg | import("../../constants.js").TcMsg | import("../../constants.js").TtMsg | import("../../constants.js").TvMsg | import("../../constants.js").WmMsg, args_2: import("../ffi/ctype.js").MaybePtr<"">, args_3: import("../ffi/ctype.js").MaybePtr<"">) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
233
|
+
/** 退出消息循环(投递 WM_QUIT,wParam = 退出码)
|
|
234
|
+
* @param args_0 nExitCode 退出码 */
|
|
235
|
+
export declare const PostQuitMessage: (args_0: number) => void;
|
|
236
|
+
/** 默认窗口过程(未处理消息的兜底)
|
|
237
|
+
* @returns 处理结果(0 保真,有符号读)
|
|
238
|
+
* @param args_0 hWnd
|
|
239
|
+
* @param args_1 Msg 消息号
|
|
240
|
+
* @param args_2 wParam 消息参数
|
|
241
|
+
* @param args_3 lParam 消息参数 */
|
|
242
|
+
export declare const DefWindowProc: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../../constants.js").HdmMsg | import("../../constants.js").ButtonExtMsg | import("../../constants.js").ButtonMsg | import("../../constants.js").ComboBoxMsg | import("../../constants.js").DtMsg | import("../../constants.js").EditMsg | import("../../constants.js").LbMsg | import("../../constants.js").LvMsg | import("../../constants.js").ProgressMsg | import("../../constants.js").StaticMsg | import("../../constants.js").SysLinkMsg | import("../../constants.js").TbMsg | import("../../constants.js").TcMsg | import("../../constants.js").TtMsg | import("../../constants.js").TvMsg | import("../../constants.js").WmMsg, args_2: import("../ffi/ctype.js").MaybePtr<"">, args_3: import("../ffi/ctype.js").MaybePtr<"">) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
243
|
+
/** 调用窗口过程(wndProc = GetWindowLongPtr(GWLP_WNDPROC) 读回的过程指针——无品牌混合位,
|
|
244
|
+
* 仅对本线程窗口调用)
|
|
245
|
+
* @returns 处理结果(0 保真,有符号读)
|
|
246
|
+
* @param args_0 lpPrevWndFunc 原窗口过程指针
|
|
247
|
+
* @param args_1 hWnd
|
|
248
|
+
* @param args_2 Msg 消息号
|
|
249
|
+
* @param args_3 wParam 消息参数
|
|
250
|
+
* @param args_4 lParam 消息参数 */
|
|
251
|
+
export declare const CallWindowProc: (args_0: import("../ffi/ctype.js").MaybePtr<"">, args_1: import("../ffi/ctype.js").MaybePtr<"HWND">, args_2: import("../../constants.js").HdmMsg | import("../../constants.js").ButtonExtMsg | import("../../constants.js").ButtonMsg | import("../../constants.js").ComboBoxMsg | import("../../constants.js").DtMsg | import("../../constants.js").EditMsg | import("../../constants.js").LbMsg | import("../../constants.js").LvMsg | import("../../constants.js").ProgressMsg | import("../../constants.js").StaticMsg | import("../../constants.js").SysLinkMsg | import("../../constants.js").TbMsg | import("../../constants.js").TcMsg | import("../../constants.js").TtMsg | import("../../constants.js").TvMsg | import("../../constants.js").WmMsg, args_3: import("../ffi/ctype.js").MaybePtr<"">, args_4: import("../ffi/ctype.js").MaybePtr<"">) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
252
|
+
/** 注册系统级唯一消息 ID(按字符串比较)
|
|
253
|
+
* @returns 消息 ID;失败 → 0
|
|
254
|
+
* @param args_0 lpString 消息名 string */
|
|
255
|
+
export declare const RegisterWindowMessage: (args_0: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">) => number;
|
|
256
|
+
/** 取窗口 DC(hWnd 传 NULL → 桌面窗口);用完必须 ReleaseDC 配对
|
|
257
|
+
* @returns DC;失败 → NULL
|
|
258
|
+
* @param args_0 hWnd NULL = 桌面窗口 */
|
|
259
|
+
export declare const GetDC: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => import("../ffi/ctype.js").MaybePtr<"HDC">;
|
|
260
|
+
/** 归还 GetDC/GetWindowDC 取的 DC(首参窗口句柄、第二参 DC,误传编译不过)
|
|
261
|
+
* @returns 成功 → 非 0
|
|
262
|
+
* @param args_0 hWnd 取 DC 时的窗口句柄
|
|
263
|
+
* @param args_1 hdc 要归还的 DC */
|
|
264
|
+
export declare const ReleaseDC: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: number & {
|
|
265
|
+
readonly ptrBrand: "HDC";
|
|
266
|
+
}) => number;
|
|
267
|
+
/** 让窗口把自己画进 hdcBlt(可截被遮挡 / 最小化的窗口;位图须按整窗尺寸建,从 (0,0) 填满)
|
|
268
|
+
* @returns 成功 → 非 0
|
|
269
|
+
* @param args_0 hWnd 被截窗口
|
|
270
|
+
* @param args_1 hdcBlt 目标 DC
|
|
271
|
+
* @param args_2 nFlags PW_* 标志(PW_CLIENTONLY=1/PW_RENDERFULLCONTENT=2,Win8.1+),XP/Win7 传 0 */
|
|
272
|
+
export declare const PrintWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: number & {
|
|
273
|
+
readonly ptrBrand: "HDC";
|
|
274
|
+
}, args_2: number) => number;
|
|
275
|
+
/** 取整个窗口(含边框标题)DC;配对 ReleaseDC
|
|
276
|
+
* @returns DC;失败 → NULL
|
|
277
|
+
* @param args_0 hWnd */
|
|
278
|
+
export declare const GetWindowDC: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => import("../ffi/ctype.js").MaybePtr<"HDC">;
|
|
279
|
+
/** 开始重绘;配对 EndPaint
|
|
280
|
+
* @returns DC
|
|
281
|
+
* @param args_0 hWnd 重绘窗口
|
|
282
|
+
* @param args_1 lpPaint 出参槽,PAINTSTRUCT.alloc().ptr(见 structs.ts) */
|
|
283
|
+
export declare const BeginPaint: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"PAINTSTRUCT">) => import("../ffi/ctype.js").MaybePtr<"HDC">;
|
|
284
|
+
/** 结束重绘(传 BeginPaint 同一 buffer)
|
|
285
|
+
* @returns 成功 → 非 0
|
|
286
|
+
* @param args_0 hWnd 重绘窗口
|
|
287
|
+
* @param args_1 lpPaint BeginPaint 同一 PAINTSTRUCT 缓冲 */
|
|
288
|
+
export declare const EndPaint: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"PAINTSTRUCT">) => number;
|
|
289
|
+
/** 文本排版绘制
|
|
290
|
+
* @returns 文本行高
|
|
291
|
+
* @param args_0 hdc 目标 DC
|
|
292
|
+
* @param args_1 lpchText 文本 string(自动 UTF-16 编码)
|
|
293
|
+
* @param args_2 cchText 字符数(-1 = 自动算到 NUL)
|
|
294
|
+
* @param args_3 lpRect 矩形(双向不注册 encoder;CALCRECT 就地写回:RECT.encode(初值) 传 .ptr、decode 读回)
|
|
295
|
+
* @param args_4 uFormat DT_* 排版标志(DrawTextFlag) */
|
|
296
|
+
export declare const DrawText: (args_0: number & {
|
|
297
|
+
readonly ptrBrand: "HDC";
|
|
298
|
+
}, args_1: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_2: number, args_3: import("../ffi/ctype.js").MaybePtr<"RECT">, args_4: number) => number;
|
|
299
|
+
/** 用画刷填充矩形
|
|
300
|
+
* @returns 填充高度
|
|
301
|
+
* @param args_0 hdc 目标 DC
|
|
302
|
+
* @param args_1 lprc 矩形(DeepPartial RECT 对象或 RECT.alloc().ptr)
|
|
303
|
+
* @param args_2 hbr 画刷句柄(无品牌 <>ptr) */
|
|
304
|
+
export declare const FillRect: (args_0: number & {
|
|
305
|
+
readonly ptrBrand: "HDC";
|
|
306
|
+
}, args_1: {
|
|
307
|
+
bottom?: number | undefined;
|
|
308
|
+
left?: number | undefined;
|
|
309
|
+
right?: number | undefined;
|
|
310
|
+
top?: number | undefined;
|
|
311
|
+
} | import("../ffi/ctype.js").MaybePtr<"RECT">, args_2: import("../ffi/ctype.js").MaybePtr<"">) => number;
|
|
312
|
+
/** 用画刷画 1px 空心矩形边框(只描边不填充);成功与否请以像素/后续状态断言
|
|
313
|
+
* @returns 返回值 Windows 版本间不可靠
|
|
314
|
+
* @param args_1 lprc 矩形(DeepPartial RECT 对象或 RECT.alloc().ptr)
|
|
315
|
+
* @param args_2 hbr 画刷句柄(CreateSolidBrush 等返回的 <>ptr 族内互传) */
|
|
316
|
+
export declare const FrameRect: (args_0: number & {
|
|
317
|
+
readonly ptrBrand: "HDC";
|
|
318
|
+
}, args_1: {
|
|
319
|
+
bottom?: number | undefined;
|
|
320
|
+
left?: number | undefined;
|
|
321
|
+
right?: number | undefined;
|
|
322
|
+
top?: number | undefined;
|
|
323
|
+
} | import("../ffi/ctype.js").MaybePtr<"RECT">, args_2: import("../ffi/ctype.js").MaybePtr<"">) => number;
|
|
324
|
+
/** 矩形区域逐像素按位取反(白→黑、红→青;再反一次可逆还原)
|
|
325
|
+
* @returns 成功 → 非 0
|
|
326
|
+
* @param args_1 lprc 矩形(DeepPartial RECT 对象或 RECT.alloc().ptr) */
|
|
327
|
+
export declare const InvertRect: (args_0: number & {
|
|
328
|
+
readonly ptrBrand: "HDC";
|
|
329
|
+
}, args_1: {
|
|
330
|
+
bottom?: number | undefined;
|
|
331
|
+
left?: number | undefined;
|
|
332
|
+
right?: number | undefined;
|
|
333
|
+
top?: number | undefined;
|
|
334
|
+
} | import("../ffi/ctype.js").MaybePtr<"RECT">) => number;
|
|
335
|
+
/** 标记窗口区域失效(触发重绘)
|
|
336
|
+
* @returns 成功 → 非 0
|
|
337
|
+
* @param args_0 hWnd
|
|
338
|
+
* @param args_1 lpRect 失效区域(DeepPartial RECT / .ptr / NULL = 全窗)
|
|
339
|
+
* @param args_2 bErase 非 0 先擦背景 */
|
|
340
|
+
export declare const InvalidateRect: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: {
|
|
341
|
+
bottom?: number | undefined;
|
|
342
|
+
left?: number | undefined;
|
|
343
|
+
right?: number | undefined;
|
|
344
|
+
top?: number | undefined;
|
|
345
|
+
} | import("../ffi/ctype.js").MaybePtr<"RECT">, args_2: number) => number;
|
|
346
|
+
/** 立即重绘失效区域
|
|
347
|
+
* @returns 成功 → 非 0
|
|
348
|
+
* @param args_0 hWnd */
|
|
349
|
+
export declare const UpdateWindow: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
350
|
+
/** 设光标形状(误传 HWND 编译不过)
|
|
351
|
+
* @returns 先前光标
|
|
352
|
+
* @param args_0 hCursor 光标句柄 */
|
|
353
|
+
export declare const SetCursor: (args_0: import("../ffi/ctype.js").MaybePtr<"HCURSOR">) => import("../ffi/ctype.js").MaybePtr<"HCURSOR">;
|
|
354
|
+
/** 加载光标资源
|
|
355
|
+
* @returns 光标句柄;失败 → NULL
|
|
356
|
+
* @param args_0 hInstance 模块句柄,NULL = 系统光标
|
|
357
|
+
* @param args_1 lpCursorName MAKEINTRESOURCE 整数(如 32512 = IDC_ARROW)直传 */
|
|
358
|
+
export declare const LoadCursor: (args_0: import("../ffi/ctype.js").MaybePtr<"HMODULE">, args_1: import("../ffi/ctype.js").MaybePtr<"">) => import("../ffi/ctype.js").MaybePtr<"HCURSOR">;
|
|
359
|
+
/** 取光标屏幕坐标
|
|
360
|
+
* @returns 成功 → 非 0
|
|
361
|
+
* @param args_0 lpPoint 出参槽,传 POINT.alloc().ptr、POINT.decode 读回 */
|
|
362
|
+
export declare const GetCursorPos: (args_0: import("../ffi/ctype.js").MaybePtr<"POINT">) => number;
|
|
363
|
+
/** 设光标屏幕坐标
|
|
364
|
+
* @returns 成功 → 非 0
|
|
365
|
+
* @param args_0 x 屏幕 x
|
|
366
|
+
* @param args_1 y 屏幕 y */
|
|
367
|
+
export declare const SetCursorPos: (args_0: number, args_1: number) => number;
|
|
368
|
+
/** 显示/隐藏光标(计数式)
|
|
369
|
+
* @returns 新计数
|
|
370
|
+
* @param args_0 bShow >0 显示(内部计数),<0 隐藏 */
|
|
371
|
+
export declare const ShowCursor: (args_0: number) => number;
|
|
372
|
+
/** 屏幕坐标 → 客户区坐标(就地更新,双向不注册 encoder)
|
|
373
|
+
* @returns 成功 → 非 0
|
|
374
|
+
* @param args_0 hWnd 目标窗口
|
|
375
|
+
* @param args_1 lpPoint 就地更新的 POINT(encode(初值) 传 .ptr、decode 读回) */
|
|
376
|
+
export declare const ScreenToClient: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"POINT">) => number;
|
|
377
|
+
/** 客户区坐标 → 屏幕坐标(就地更新,同上)
|
|
378
|
+
* @returns 成功 → 非 0
|
|
379
|
+
* @param args_0 hWnd 源窗口
|
|
380
|
+
* @param args_1 lpPoint 就地更新的 POINT(同 ScreenToClient) */
|
|
381
|
+
export declare const ClientToScreen: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"POINT">) => number;
|
|
382
|
+
/** 批量坐标系转换
|
|
383
|
+
* @returns 偏移差的低/高 16 位打包值
|
|
384
|
+
* @param args_0 hWndFrom 源窗口
|
|
385
|
+
* @param args_1 hWndTo 目标窗口
|
|
386
|
+
* @param args_2 lpPoints POINT 数组缓冲
|
|
387
|
+
* @param args_3 cPoints 点数 */
|
|
388
|
+
export declare const MapWindowPoints: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"HWND">, args_2: import("../ffi/ctype.js").PtrArrayBuffer<any> | import("../ffi/ctype.js").MaybePtr<"BYTE">, args_3: number) => number;
|
|
389
|
+
/** 取当前捕获鼠标的窗口
|
|
390
|
+
* @returns 窗口句柄;无 → NULL */
|
|
391
|
+
export declare const GetCapture: () => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
392
|
+
/** 捕获鼠标输入到窗口
|
|
393
|
+
* @returns 先前捕获窗口
|
|
394
|
+
* @param args_0 hWnd 接收捕获的窗口 */
|
|
395
|
+
export declare const SetCapture: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => import("../ffi/ctype.js").MaybePtr<"HWND">;
|
|
396
|
+
/** 释放鼠标捕获
|
|
397
|
+
* @returns 成功 → 非 0 */
|
|
398
|
+
export declare const ReleaseCapture: () => number;
|
|
399
|
+
/** 取虚拟键状态
|
|
400
|
+
* @returns SHORT:高位 0x8000 = 按下、低位 = 自上次调用的切换
|
|
401
|
+
* @param args_0 nVirtKey 虚拟键码(VK_*) */
|
|
402
|
+
export declare const GetKeyState: (args_0: number) => number;
|
|
403
|
+
/** 取虚拟键全局按下状态
|
|
404
|
+
* @returns 高位 0x8000 = 当前按下
|
|
405
|
+
* @param args_0 nVirtKey 虚拟键码(VK_*) */
|
|
406
|
+
export declare const GetAsyncKeyState: (args_0: number) => number;
|
|
407
|
+
/** 取全部 256 键状态
|
|
408
|
+
* @returns 成功 → 非 0
|
|
409
|
+
* @param args_0 lpKeyState 出参槽,自备 256 字节 buffer */
|
|
410
|
+
export declare const GetKeyboardState: (args_0: import("../ffi/ctype.js").PtrArrayBuffer<any> | import("../ffi/ctype.js").MaybePtr<"BYTE">) => number;
|
|
411
|
+
/** 字符 → 虚拟键+修饰键
|
|
412
|
+
* @returns SHORT(低字节 VK、高位 shift/ctrl/alt 掩码),无 → -1
|
|
413
|
+
* @param args_0 ch 字符码(如 65 = 'A') */
|
|
414
|
+
export declare const VkKeyScan: (args_0: number) => number;
|
|
415
|
+
/** 批量注入输入事件(一次调用 = cInputs 个 INPUT 紧密数组 = 一个原子输入块)
|
|
416
|
+
* @returns 成功注入的事件数;0 = 全部失败(UIPI:目标进程完整性更高),< cInputs = 部分成功
|
|
417
|
+
* @param args_0 events INPUT 元素数组(structArray(INPUT) encoder 直传
|
|
418
|
+
* [{type:0|1, data:{mi|ki:{...}}}];绝对坐标 dx/dy 是 0-65535 归一化物理像素——本引擎
|
|
419
|
+
* SetProcessDPIAware,GetSystemMetrics/GetWindowRect 同空间,换算 x*65535/(SM_CXSCREEN-1))
|
|
420
|
+
* @param args_1 cbSize 传 INPUT.size(MSDN 要求 = sizeof(INPUT),x86 28 / x64 40,
|
|
421
|
+
* 传错整体静默失败) */
|
|
422
|
+
export declare const SendInput: (args_0: number, args_1: readonly {
|
|
423
|
+
data?: {
|
|
424
|
+
ki?: {
|
|
425
|
+
dwExtraInfo?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
426
|
+
dwFlags?: number | undefined;
|
|
427
|
+
time?: number | undefined;
|
|
428
|
+
wScan?: number | undefined;
|
|
429
|
+
wVk?: number | undefined;
|
|
430
|
+
} | undefined;
|
|
431
|
+
mi?: {
|
|
432
|
+
dwExtraInfo?: import("../ffi/ctype.js").MaybePtr<""> | undefined;
|
|
433
|
+
dwFlags?: number | undefined;
|
|
434
|
+
dx?: number | undefined;
|
|
435
|
+
dy?: number | undefined;
|
|
436
|
+
mouseData?: number | undefined;
|
|
437
|
+
time?: number | undefined;
|
|
438
|
+
} | undefined;
|
|
439
|
+
} | undefined;
|
|
440
|
+
type?: number | undefined;
|
|
441
|
+
}[] | import("../ffi/ctype.js").MaybePtr<"INPUT">, args_2: number) => number;
|
|
442
|
+
/** 设定时器(hWnd/id 传 NULL/0 = 自动分配 id;lpTimerFunc 传 NULL 用 WM_TIMER)
|
|
443
|
+
* @returns 定时器 ID(自动分配时从返回值读回);失败 → 0
|
|
444
|
+
* @param args_0 hWnd 关联窗口,可 NULL
|
|
445
|
+
* @param args_1 id 定时器 ID(0 = 自动分配)
|
|
446
|
+
* @param args_2 uElapse 间隔毫秒
|
|
447
|
+
* @param args_3 lpTimerFunc 回调指针(closure().ptr),NULL = WM_TIMER 消息 */
|
|
448
|
+
export declare const SetTimer: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"">, args_2: number, args_3: import("../ffi/ctype.js").MaybePtr<"">) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
449
|
+
/** 杀定时器(id 用 SetTimer 返回值)
|
|
450
|
+
* @returns 成功 → 非 0
|
|
451
|
+
* @param args_0 hWnd 关联窗口,可 NULL
|
|
452
|
+
* @param args_1 id 定时器 ID(SetTimer 返回值) */
|
|
453
|
+
export declare const KillTimer: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"">) => number;
|
|
454
|
+
/** 打开剪贴板;配对 CloseClipboard
|
|
455
|
+
* @returns 成功 → 非 0
|
|
456
|
+
* @param args_0 hWnd 拥有窗口,可 NULL */
|
|
457
|
+
export declare const OpenClipboard: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
458
|
+
/** 关闭剪贴板
|
|
459
|
+
* @returns 成功 → 非 0 */
|
|
460
|
+
export declare const CloseClipboard: () => number;
|
|
461
|
+
/** 清空剪贴板(须先 OpenClipboard)
|
|
462
|
+
* @returns 成功 → 非 0 */
|
|
463
|
+
export declare const EmptyClipboard: () => number;
|
|
464
|
+
/** 取剪贴板数据(须先 OpenClipboard + 有数据)
|
|
465
|
+
* @returns 数据句柄;无 → NULL
|
|
466
|
+
* @param args_0 uFormat 剪贴板格式(CF_* 或 RegisterClipboardFormat 返回值) */
|
|
467
|
+
export declare const GetClipboardData: (args_0: number) => import("../ffi/ctype.js").MaybePtr<"HGLOBAL">;
|
|
468
|
+
/** 放数据进剪贴板
|
|
469
|
+
* @returns 成功 → 非 0
|
|
470
|
+
* @param args_0 uFormat 剪贴板格式
|
|
471
|
+
* @param args_1 hMem 全局内存句柄(所有权移交系统后勿再用) */
|
|
472
|
+
export declare const SetClipboardData: (args_0: number, args_1: import("../ffi/ctype.js").MaybePtr<"HGLOBAL">) => import("../ffi/ctype.js").MaybePtr<"HGLOBAL">;
|
|
473
|
+
/** 注册自定义剪贴板格式 ID
|
|
474
|
+
* @returns 格式 ID;失败 → 0
|
|
475
|
+
* @param args_0 lpszFormat 格式名 string */
|
|
476
|
+
export declare const RegisterClipboardFormat: (args_0: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">) => number;
|
|
477
|
+
/** 剪贴板是否有指定格式数据
|
|
478
|
+
* @returns 有 → 非 0
|
|
479
|
+
* @param args_0 format 剪贴板格式(CF_*) */
|
|
480
|
+
export declare const IsClipboardFormatAvailable: (args_0: number) => number;
|
|
481
|
+
/** 取窗口菜单
|
|
482
|
+
* @returns 菜单句柄;无菜单 → NULL
|
|
483
|
+
* @param args_0 hWnd */
|
|
484
|
+
export declare const GetMenu: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => import("../ffi/ctype.js").MaybePtr<"HMENU">;
|
|
485
|
+
/** 设/清窗口菜单;改后需 DrawMenuBar
|
|
486
|
+
* @returns 成功 → 非 0
|
|
487
|
+
* @param args_0 hWnd
|
|
488
|
+
* @param args_1 hMenu 新菜单,NULL 清除 */
|
|
489
|
+
export declare const SetMenu: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: import("../ffi/ctype.js").MaybePtr<"HMENU">) => number;
|
|
490
|
+
/** 重画菜单栏
|
|
491
|
+
* @returns 成功 → 非 0
|
|
492
|
+
* @param args_0 hWnd */
|
|
493
|
+
export declare const DrawMenuBar: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">) => number;
|
|
494
|
+
/** 追加菜单项
|
|
495
|
+
* @returns 成功 → 非 0
|
|
496
|
+
* @param args_0 hMenu 目标菜单
|
|
497
|
+
* @param args_1 uFlags MF_* 标志(MF_STRING/MF_SEPARATOR/MF_POPUP 等)
|
|
498
|
+
* @param args_2 uIDNewItem 命令 ID 或子菜单句柄(混合位)
|
|
499
|
+
* @param args_3 lpNewItem 菜单项文本 string 或 NULL */
|
|
500
|
+
export declare const AppendMenu: (args_0: import("../ffi/ctype.js").MaybePtr<"HMENU">, args_1: number, args_2: import("../ffi/ctype.js").MaybePtr<"">, args_3: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">) => number;
|
|
501
|
+
/** 销毁菜单(误传 HWND 编译不过)
|
|
502
|
+
* @returns 成功 → 非 0
|
|
503
|
+
* @param args_0 hMenu */
|
|
504
|
+
export declare const DestroyMenu: (args_0: import("../ffi/ctype.js").MaybePtr<"HMENU">) => number;
|
|
505
|
+
/** 设菜单项勾选状态
|
|
506
|
+
* @returns 先前状态(0xFFFFFFFF = 失败)
|
|
507
|
+
* @param args_0 hMenu
|
|
508
|
+
* @param args_1 uIDItem 菜单项 ID 或位置(依 uFlags MF_BYPOSITION)
|
|
509
|
+
* @param args_2 uCheck MF_CHECKED/MF_UNCHECKED 等 */
|
|
510
|
+
export declare const CheckMenuItem: (args_0: import("../ffi/ctype.js").MaybePtr<"HMENU">, args_1: number, args_2: number) => number;
|
|
511
|
+
/** 启用/禁用/灰化菜单项
|
|
512
|
+
* @returns 先前状态
|
|
513
|
+
* @param args_0 hMenu
|
|
514
|
+
* @param args_1 uIDItem 菜单项 ID 或位置
|
|
515
|
+
* @param args_2 uEnable MF_ENABLED/MF_GRAYED/MF_DISABLED 等 */
|
|
516
|
+
export declare const EnableMenuItem: (args_0: import("../ffi/ctype.js").MaybePtr<"HMENU">, args_1: number, args_2: number) => number;
|
|
517
|
+
/** 取子菜单(按位置)
|
|
518
|
+
* @returns 子菜单句柄;无 → NULL(出入参同型)
|
|
519
|
+
* @param args_0 hMenu 父菜单
|
|
520
|
+
* @param args_1 nPos 子菜单位置索引 */
|
|
521
|
+
export declare const GetSubMenu: (args_0: import("../ffi/ctype.js").MaybePtr<"HMENU">, args_1: number) => import("../ffi/ctype.js").MaybePtr<"HMENU">;
|
|
522
|
+
/** 弹出跟踪菜单
|
|
523
|
+
* @returns 菜单项命令 ID 或 0
|
|
524
|
+
* @param args_0 hMenu 弹出菜单
|
|
525
|
+
* @param args_1 uFlags TPM_* 标志
|
|
526
|
+
* @param args_2 x 屏幕 x
|
|
527
|
+
* @param args_3 y 屏幕 y
|
|
528
|
+
* @param args_4 nReserved 保留,传 0(TrackPopupMenuEx 才用)
|
|
529
|
+
* @param args_5 hWnd 拥有者窗口(TPM_RETURNCMD 时命令 ID 回到该窗口所属线程队列)
|
|
530
|
+
* @param args_6 prcRect 保留位,传 NULL(Win32 文档标注本 API 忽略此参数) */
|
|
531
|
+
export declare const TrackPopupMenu: (args_0: import("../ffi/ctype.js").MaybePtr<"HMENU">, args_1: number, args_2: number, args_3: number, args_4: number, args_5: import("../ffi/ctype.js").MaybePtr<"HWND">, args_6: {
|
|
532
|
+
bottom?: number | undefined;
|
|
533
|
+
left?: number | undefined;
|
|
534
|
+
right?: number | undefined;
|
|
535
|
+
top?: number | undefined;
|
|
536
|
+
} | import("../ffi/ctype.js").MaybePtr<"RECT">) => number;
|
|
537
|
+
/** 创建弹出菜单;配对 DestroyMenu
|
|
538
|
+
* @returns 菜单句柄;失败 → NULL */
|
|
539
|
+
export declare const CreatePopupMenu: () => import("../ffi/ctype.js").MaybePtr<"HMENU">;
|
|
540
|
+
/** 设滚动参数
|
|
541
|
+
* @returns 滑块位置
|
|
542
|
+
* @param args_0 hWnd
|
|
543
|
+
* @param args_1 nBar 滚动条(SB_HORZ=0/SB_VERT=1/SB_CTL=2)
|
|
544
|
+
* @param args_2 lpScrollInfo DeepPartial SCROLLINFO(cbSize 必须显式给 SCROLLINFO.size——Win32
|
|
545
|
+
* 结构自描述要求,缺省跳过帮不了;fMask = SIF_* 决定写哪些项)
|
|
546
|
+
* @param args_3 redraw 非 0 立即重画 */
|
|
547
|
+
export declare const SetScrollInfo: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: number, args_2: {
|
|
548
|
+
cbSize?: number | undefined;
|
|
549
|
+
fMask?: number | undefined;
|
|
550
|
+
nMax?: number | undefined;
|
|
551
|
+
nMin?: number | undefined;
|
|
552
|
+
nPage?: number | undefined;
|
|
553
|
+
nPos?: number | undefined;
|
|
554
|
+
nTrackPos?: number | undefined;
|
|
555
|
+
} | import("../ffi/ctype.js").MaybePtr<"SCROLLINFO">, args_3: number) => number;
|
|
556
|
+
/** 取滚动参数(双向不注册 encoder)
|
|
557
|
+
* @returns 成功 → 非 0
|
|
558
|
+
* @param args_0 hWnd
|
|
559
|
+
* @param args_1 nBar 滚动条(SB_*)
|
|
560
|
+
* @param args_2 lpScrollInfo SCROLLINFO.encode({cbSize, fMask}) 传 .ptr、decode 读回 */
|
|
561
|
+
export declare const GetScrollInfo: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: number, args_2: import("../ffi/ctype.js").MaybePtr<"SCROLLINFO">) => number;
|
|
562
|
+
/** 显示/隐藏滚动条
|
|
563
|
+
* @returns 成功 → 非 0
|
|
564
|
+
* @param args_0 hWnd
|
|
565
|
+
* @param args_1 bar 滚动条(0=HORZ 1=VERT 3=BOTH)
|
|
566
|
+
* @param args_2 show 非 0 显示 */
|
|
567
|
+
export declare const ShowScrollBar: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: number, args_2: number) => number;
|
|
568
|
+
/** 消息框(仅在确实要弹窗时调用;MB_* 常量见 MSDN)
|
|
569
|
+
* @returns 按钮 ID
|
|
570
|
+
* @param args_0 hWnd 父窗口,可 NULL
|
|
571
|
+
* @param args_1 lpText 正文 string
|
|
572
|
+
* @param args_2 lpCaption 标题 string
|
|
573
|
+
* @param args_3 uType MB_* 样式(MB_OK/MB_YESNO 等) */
|
|
574
|
+
export declare const MessageBox: (args_0: import("../ffi/ctype.js").MaybePtr<"HWND">, args_1: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_2: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_3: number) => number;
|
|
575
|
+
/** 按名加载图像(string 自动编码;uType/fuLoad 用 Win32 真值——与 ImageType 枚举当前值
|
|
576
|
+
* 不同)
|
|
577
|
+
* @returns 图像句柄——类型随 uType(IMAGE_ICON→HICON / CURSOR→HCURSOR / BITMAP→HBITMAP),
|
|
578
|
+
* 绑定侧给不出品牌故为裸地址档;失败 → 0
|
|
579
|
+
* @param args_0 hinst 模块句柄,NULL = 系统资源或 .ico 文件
|
|
580
|
+
* @param args_1 name 图像名 string(资源名或文件路径)
|
|
581
|
+
* @param args_2 uType IMAGE_* 真值(BITMAP=0/CURSOR=1/ICON=2)
|
|
582
|
+
* @param args_3 cx 期望宽度(0 = 原始)
|
|
583
|
+
* @param args_4 cy 期望高度(0 = 原始)
|
|
584
|
+
* @param args_5 fuLoad LR_* 标志(LR_LOADFROMFILE=0x10/LR_SHARED=0x8000,系统 IDI 需 SHARED) */
|
|
585
|
+
export declare const LoadImage: (args_0: import("../ffi/ctype.js").MaybePtr<"HMODULE">, args_1: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_2: number, args_3: number, args_4: number, args_5: number) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
586
|
+
/** 按资源 ID 序数加载图像(name 直传 MAKEINTRESOURCE 整数);其余同 LoadImage
|
|
587
|
+
* @returns 图像句柄;失败 → 0
|
|
588
|
+
* @param args_0 hinst 模块句柄
|
|
589
|
+
* @param args_1 name 资源 ID 序数(如 IDI_APPLICATION=32512)
|
|
590
|
+
* @param args_2 uType IMAGE_* 真值
|
|
591
|
+
* @param args_3 cx 期望宽度(0 = 原始)
|
|
592
|
+
* @param args_4 cy 期望高度(0 = 原始)
|
|
593
|
+
* @param args_5 fuLoad LR_* 标志 */
|
|
594
|
+
export declare const LoadImageOrdinal: (args_0: import("../ffi/ctype.js").MaybePtr<"HMODULE">, args_1: import("../ffi/ctype.js").MaybePtr<"">, args_2: number, args_3: number, args_4: number, args_5: number) => import("../ffi/ctype.js").MaybePtr<"">;
|
|
595
|
+
/** 取系统度量
|
|
596
|
+
* @returns 度量值
|
|
597
|
+
* @param args_0 nIndex 度量索引(SM_CXSCREEN=0/SM_CYSCREEN=1 等 SM_*) */
|
|
598
|
+
export declare const GetSystemMetrics: (args_0: number) => number;
|
|
599
|
+
/** 读/写系统参数
|
|
600
|
+
* @returns 成功 → 非 0
|
|
601
|
+
* @param args_0 uiAction SPI_* 操作码
|
|
602
|
+
* @param args_1 uiParam 参数(随操作而定,常为缓冲大小或 0)
|
|
603
|
+
* @param args_2 pvParam 数据 buffer(如 SPI_GETNONCLIENTMETRICS 的缓冲)
|
|
604
|
+
* @param args_3 fWinIni SPIF_* 写入标志(0 = 仅当前会话) */
|
|
605
|
+
export declare const SystemParametersInfo: (args_0: number, args_1: number, args_2: import("../ffi/ctype.js").PtrArrayBuffer<any> | import("../ffi/ctype.js").MaybePtr<"BYTE">, args_3: number) => number;
|
|
606
|
+
/** 枚举顶层窗口
|
|
607
|
+
* @returns 全枚举完 → 非 0
|
|
608
|
+
* @param args_0 lpEnumFunc 回调指针(closure(stdcall)().ptr),回调返 0 停止
|
|
609
|
+
* @param args_1 lParam 透传给回调的附加值(常传 0) */
|
|
610
|
+
export declare const EnumWindows: (args_0: import("../ffi/ctype.js").MaybePtr<"">, args_1: import("../ffi/ctype.js").MaybePtr<"">) => number;
|
|
611
|
+
/** 枚举显示模式(iDevNum 从 0 起逐个枚举)
|
|
612
|
+
* @returns 找到 → 非 0;枚举尽 → 0
|
|
613
|
+
* @param args_0 lpszDeviceName 设备名,NULL = 主显示设备
|
|
614
|
+
* @param args_1 iDevNum 模式序号(0 起递增;-1 = 当前设置)
|
|
615
|
+
* @param args_2 lpDevMode DEVMODEW 出参缓冲(双向不注册 encoder,只收 def 的 .ptr;
|
|
616
|
+
* encode({ dmSize: DEVMODEW.size }).ptr 传入、decode 读回) */
|
|
617
|
+
export declare const EnumDisplaySettings: (args_0: string | import("../ffi/ctype.js").MaybePtr<"WCHAR">, args_1: number, args_2: import("../ffi/ctype.js").MaybePtr<"DEVMODEW">) => number;
|
|
618
|
+
/** 改显示模式
|
|
619
|
+
* @returns DISP_CHANGE_*(0 = DISP_CHANGE_SUCCESSFUL)
|
|
620
|
+
* @param args_0 lpDevMode DEVMODEW 缓冲(须先枚举/预置 dmSize+dmFields,
|
|
621
|
+
* DM_PELSWIDTH|DM_PELSHEIGHT 等决定生效项;收 encode(...).ptr)
|
|
622
|
+
* @param args_1 dwFlags CDS_* 标志(0 = 仅当前会话、CDS_UPDATEREGISTRY = 写注册表持久化) */
|
|
623
|
+
export declare const ChangeDisplaySettings: (args_0: import("../ffi/ctype.js").MaybePtr<"DEVMODEW">, args_1: number) => number;
|