AutoHotkey 实时显示输入法状态
以下是用 AutoHotkey 编写的代码:
#SingleInstance force
Gui, Add, Text, x10 y10 w150 h20, '当前输入法状态:' Gui, Add, Text, x170 y10 w100 h20,
Gui, Show, w300 h50, '输入法状态'
SetTimer, UpdateInputMethodStatus, 1000 return
UpdateInputMethodStatus: if(GetInputState()) { GuiControl, Text, , '中文输入' } else { GuiControl, Text, , '输入法关闭' } return
GetInputState() { hkl := DllCall('LoadKeyboardLayout', 'Str', '00000409', 'UInt', 1) return DllCall('GetKeyboardLayout', 'UInt') }
首先创建一个窗口,使用 Gui 命令创建。然后在窗口中添加一个文本框,用于显示当前输入法状态。使用 SetTimer 命令开启一个定时器,每隔一定时间更新一次输入法状态。在 UpdateInputMethodStatus 子程序中,使用 GetInputState 函数获取当前输入法状态,并将其显示在窗口中的文本框中。GetInputState 函数使用 DllCall 命令调用 Windows API 函数,获取当前输入法状态。最后将这段代码保存成一个 .ahk 文件,运行即可。
原文地址: https://www.cveoy.top/t/topic/nxS7 著作权归作者所有。请勿转载和采集!