输入法切换

;功能:输入法状态提示 ;f1强制中文 f2强制英文小写 capslock强制英文大写
;环境:win10+搜狗输入法,输入法状态切换用默认的shift键。
;作者:kazhafeizhale
;时间:2018年9月8日
;参考来源 http://www.autoahk.com/archives/3278

#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
#SingleInstance force
startuplnk := A_StartMenu . "\Programs\Startup\自动化集合.lnk"

Menu, Tray, Add, 开机启动,AutoStart
if(FileExist(startuplnk))
Menu, Tray, Check, 开机启动

return

AutoStart:
	if(FileExist(startuplnk))
	FileDelete, % startuplnk
	else
		FileCreateShortcut, % A_ScriptFullpath, % startuplnk
	Menu, Tray, ToggleCheck, 开机启动
return

XButton1::^c
XButton2::^v

F1::
	SetCapsLockState,off
	switchime(0)
	switchime()
return

F2::
	SetCapsLockState,off
	switchime(0)
return
CapsLock::
	SetCapsLockState,on
return

switchime(ime := "A")
{
	if (ime = 1){
		DllCall("SendMessage", UInt, WinActive("A"), UInt, 80, UInt, 1, UInt, DllCall("LoadKeyboardLayout", Str,"00000804", UInt, 1))
	}else if (ime = 0)
	{
		DllCall("SendMessage", UInt, WinActive("A"), UInt, 80, UInt, 1, UInt, DllCall("LoadKeyboardLayout", Str,, UInt, 1))
	}else if (ime = "A")
	{
		;ime_status:=DllCall("GetKeyboardLayout","int",0,UInt)
		Send, #{Space}
	}}

 

给TA买糖
共{{data.count}}人
人已赞赏
AHKV1

带天气功能的时钟

2018-9-6 9:08:43

AHKV1其他学习

TC学堂最易读的Total Commander教程

2018-9-11 16:00:44

5 条回复 A文章作者 M管理员
  1. ghty

    :mrgreen: :mrgreen: :mrgreen:

  2. DOTF

    你好,我在WIN7状态下尝试,发现强制英文可以用,但强制中文跟CAPSLOCK好像都不好使了 🙁 。
    请问如果我只想实现用F1切换英文,但保留现在搜狗的shift中英文切换(这样就不需要强制中文),要怎么做呢?谢谢

  3. 自由如风

    复制试试看,感谢大神

  4. 一只蚂蚁

    感谢大神,根据自己的习惯,修改成了左shit是中文,右shit是英文的状态

  5. hststb

    复制试试看,感谢大神

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索