#按键精灵打字脚本,因为用的ascii码表,一些特别符号无法识别,求教怎么解决
#这三个符号➟↵˽ 想把第一个弄成Tab键 第二个弄成回车,第三个弄成空格
//读取txt
word = Plugin.File.ReadFileEx("D:\007\1.txt")
//TracePrint word
mydelay = 20
//等待2s 将鼠标放到定义位置
Delay 2000
TracePrint Asc("`")
TracePrint Asc("'")
For i = 0 To len(word)
//大写字母
If (Asc(Mid(word, i, 1))>=65 And Asc(Mid(word, i, 1)) <= 90) Then
input_ua(Mid(word, i, 1))
//小写字母
ElseIf (Asc(Mid(word, i, 1)) >= 97 And Asc(Mid(word, i, 1)) <= 122) Or (Asc(Mid(word, i, 1)) >= 44 And Asc(Mid(word, i, 1)) <= 57) Or (Asc(Mid(word, i, 1)) = 39) Or (Asc(Mid(word, i, 1)) = 59) Or (Asc(Mid(word, i, 1)) = 61) Or (Asc(Mid(word, i, 1)) = 96) Or (Asc(Mid(word, i, 1)) >= 91 And Asc(Mid(word, i, 1)) <= 93) Then
input_sa(Mid(word, i, 1))
Else
symbols(Asc(Mid(word, i, 1)))
End If
Next
Function symbols(num)
If num = 32 Then
KeyDown "Space", 1
Delay mydelay
KeyUp "Space", 1
ElseIf num = 33 Then
KeyDown "Shift", 1
KeyDown "1", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "1", 1
ElseIf num = 34 Then
KeyDown "Shift", 1
KeyDown "'", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "'", 1
ElseIf num = 35 Then
KeyDown "Shift", 1
KeyDown "3", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "3", 1
ElseIf num = 36 Then
KeyDown "Shift", 1
KeyDown "4", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "4", 1
ElseIf num = 37 Then
KeyDown "Shift", 1
KeyDown "5", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "5", 1
ElseIf num = 38 Then
KeyDown "Shift", 1
KeyDown "7", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "7", 1
ElseIf num = 40 Then
KeyDown "Shift", 1
KeyDown "9", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "9", 1
ElseIf num = 41 Then
KeyDown "Shift", 1
KeyDown "0", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "0", 1
ElseIf num = 42 Then
KeyDown "Shift", 1
KeyDown "8", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "8", 1
ElseIf num = 43 Then
KeyDown "Shift", 1
KeyDown "=", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "=", 1
ElseIf num = 58 Then
KeyDown "Shift", 1
KeyDown ";", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp ";", 1
ElseIf num = 60 Then
KeyDown "Shift", 1
KeyDown ",", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp ",", 1
ElseIf num = 62 Then
KeyDown "Shift", 1
KeyDown ".", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp ".", 1
ElseIf num = 63 Then
KeyDown "Shift", 1
KeyDown "/", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "/", 1
ElseIf num = 64 Then
KeyDown "Shift", 1
KeyDown "2", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "2", 1
ElseIf num = 94 Then
KeyDown "Shift", 1
KeyDown "6", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "6", 1
ElseIf num = 95 Then
KeyDown "Shift", 1
KeyDown "-", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "-", 1
ElseIf num = 126 Then
KeyDown "Shift", 1
KeyDown "`", 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp "`", 1
End If
End Function
//小写输入
Function input_sa(str)
KeyDown str, 1
Delay mydelay
KeyUp str, 1
End Function
//大写输入
Function input_ua(str)
KeyDown "Shift", 1
KeyDown str, 1
Delay mydelay
KeyUp "Shift", 1
Delay mydelay
KeyUp str, 1
End Function
参考GPT和自己的思路:
对于码表里没有的符号,可以通过使用其对应的Unicode编码来定义。例如,第一个符号的Unicode编码为U+279F,可以使用"\u279F"或chr(10175)来表示。然后可以在代码中添加对应的处理逻辑,将其转换为需要的功能,如将其转换为Tab键、回车或空格等。
参考GPT和自己的思路:
针对你的问题,如果码表里没有特定的符号,你可以通过 Unicode 码来定义。Unicode 是一种用于统一字符编码的标准,可以对所有的字符进行编码并互相转换。
对于你的具体情况,可以在代码中使用 Unicode 码来定义这些符号的键码:
你可以将这些键码加入你的代码中,通过按键精灵来识别和模拟它们的按键事件。
不知道你这个问题是否已经解决, 如果还没有解决的话: