婆罗门
精华
|
战斗力 鹅
|
回帖 0
注册时间 2012-9-19
|
本帖最后由 schneehertz 于 2017-9-2 02:08 编辑
闲,逛NGA,有位兄弟提了个蛋疼的问题 有没有一种键盘可以识别输入法的
于是写了个小程序,中文亮Scoll Lock灯,英文不亮灯,用的是Autohotkey
#Persistent
SetTimer, IMEState, 100
return
IMEState:
State := IME_GET()
If State = 0
SetScrollLockState, Off
else
SetScrollLockState, On
Return
IME_GET(WinTitle="A") {
ControlGet,hwnd,HWND,,,%WinTitle%
if (WinActive(WinTitle)) {
ptrSize := !A_PtrSize ? 4 : A_PtrSize
VarSetCapacity(stGTI, cbSize:=4+4+(PtrSize*6)+16, 0)
NumPut(cbSize, stGTI, 0, "UInt") ; DWORD cbSize;
hwnd := DllCall("GetGUIThreadInfo", Uint,0, Uint,&stGTI)
? NumGet(stGTI,8+PtrSize,"UInt") : hwnd
}
return DllCall("SendMessage"
, UInt, DllCall("imm32\ImmGetDefaultIMEWnd", Uint,hwnd)
, UInt, 0x0283 ;Message : WM_IME_CONTROL
, Int, 0x0005 ;wParam : IMC_GETOPENSTATUS
, Int, 0) ;lParam : 0
}
虽说好像确实是没什么卵用,有爱自取吧
IME_GET函数来自https://www6.atwiki.jp/eamat/pages/17.html
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
查看全部评分
|