flyinclouds / KBLAutoSwitch

AHK自动切换中英文输入法,输入法,自动切换
731 stars 48 forks source link

KBLAutoSwitch窗口创建偶尔无法自动切换输入法的问题 #35

Open yisqiu opened 1 year ago

yisqiu commented 1 year ago

在使用过程中偶尔会出现无法自动切换成自己想要的输入法的问题,比如我将cmd窗口设为自动切换英文输入法,但是在使用过程中如果当前没有cmd窗口,而是从开始菜单直接创建一个窗口,这种情况下KBLAutoSwitch无法切换成预设的英文输入法,研究其源代码,发现是由于在接受系统窗口回调消息切换输入法的时候软件通过

SetTimer, Label_Shell_KBLSwitch, -100

这句话来实现延时100毫秒切换窗口,但是从打开窗口的消息发出到最后窗口出现,如果超过100毫秒,那么这个操作将失效,这时候我们只需要将上述语句改成如下即可

SetTimer, Label_Shell_KBLSwitch, -700

以上语句在2.4.1版本的702行,至于修改成多长时间,这个大家可以自己测试