在某些情况下,sayString命令对某些输入框不起作用,可以考虑将要输入的字符串拆分成最基本的按键命令进行输入,下面演示如何拆分输入邮箱字符串
方法/步骤
1
编写一个Sub函数块,然后我们将模拟方式设置为超级模拟,超级模拟可以突破某些按键屏蔽
2
接着获取焦点句柄,及当前鼠标所在输入框的句柄
3
接着设置句柄处的输入方法为系统默认自带的美式键盘,防止输入字母时被中文输入法拦截
4
接着定义变量i和变量t,i为第几个字符,t为该字符的asc码值
5
用一个for循环拆解字符串,然后用Asc函数来获取字符的asc码值
6
接着判断asc码值是否等于64,则正好是字符@的码值,我们用alt+2键的命令来模拟输入@字符,然后用Goto命令来结束本次循环
7
在只有数字,字母的邮箱中,除了@字符,其它字符直接用按键命令模拟输入即可,别忘了Rem标记在循环的末尾
8
//将只包含字母数字的邮箱拆分成按键命令输出Sub send_mail(mail)//设置模拟模式为超级模拟SetSimMode 2//获取焦点句柄Hwnd = Plugin.Window.MousePoint()//设置为默认键盘Call Plugin.SysEx.SetInputMethod(Hwnd, '中文(简体) - 美式键盘')//i为第几个字符,t为该字符的asc码值Dim i, tFor i = 1 To len(mail) t = Asc(mid(mail, i, 1)) If t = 64 Then //alt+2,输入@ KeyDown 16, 1 KeyPress 50, 1 KeyUp 16, 1 //结束本次循环 Goto mark1 End If KeyPress mid(mail, i, 1), 1 Rem mark1NextEnd Sub
上一篇:怎么戒烟有效,戒烟的方法