Board logo

标题: [原创] 易语言API全局热键源码 [打印本页]

作者: qdcat911    时间: 2014-11-22 16:36     标题: 易语言API全局热键源码

.版本 2
.支持库 Krnlnex

.程序集 窗口程序集1
.程序集变量 热键序号, 整数型
.程序集变量 preWinProc, 整数型
.程序集变量 辅助键, 整数型
.程序集变量 虚拟键, 整数型

.子程序 __启动窗口_创建完毕

' =====================================================================================↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓启动程序+全局热键↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓==================================
preWinProc = API_GetWindowLong (取窗口句柄 (), #GWL_WNDPROC)
API_SetWindowLong (取窗口句柄 (), #GWL_WNDPROC, 到整数 (&处理))
热键序号 = 1
辅助键 = #MOD_CONTROL + #MOD_ALT + #MOD_SHIFT
虚拟键 = #J键
API_RegisterHotKey (取窗口句柄 (), 热键序号, 辅助键, 虚拟键)
' =====================================================================================↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑启动程序+全局热键↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑==================================
' =====================================================================================↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓启动程序+全局热键模块↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓==================================

.子程序 处理, 整数型
.参数 hwnd, 整数型
.参数 msg, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型


.判断开始 (msg = #WM_HOTKEY)
    .如果真 (wParam = 热键序号)
        .如果真 (到整数 (lParam ÷ 65536) = #J键 且 lParam - 到整数 (lParam ÷ 65536) × 65536 = 辅助键)
            ' 可视 = 取反 (可视)
            调试输出 (“现在执行程序了”)
        .如果真结束

    .如果真结束

.默认

.判断结束
返回 (API_CallWindowProc (preWinProc, hwnd, msg, wParam, lParam))

.子程序 __启动窗口_将被销毁

API_SetWindowLong (取窗口句柄 (), #GWL_WNDPROC, preWinProc)
API_UnregisterHotKey (取窗口句柄 (), 虚拟键)
' =====================================================================================↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑启动程序+全局热键模块↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑==================================

附件: 易语言API全局热键源码.e (2014-11-22 17:14, 22.58 KB) / 该附件被下载次数 6105
http://www.hjzfy.com/attachment.php?aid=3505&k=46d2c907e9d329fd297e136bf4b3e418&t=1716001850




欢迎光临 挥剑斩浮云 (http://www.hjzfy.com/) Powered by Discuz! 6.1.0