Autohotkey输入无需端键

时间:2017-07-05 12:31:24

标签: input autohotkey

我创建了这个脚本来扫描磁带(条形码)。 扫描完成后,它会在结束之前,之后和之后创建一个空格。

示例:“T51320L5”变为“T51320L5 - ”

每当扫描这种类型的条形码时,它都会运行,但只按一次空格。 我想这样做,所以不需要按键。 只扫描条形码。

结尾“L5”总是一样的,所以也许这些键作为一个端键可以完成。 只有我不知道该怎么做。

我扫描的条形码示例:

T71233L5 - T71243L5 - T71256L5 - T71263L5 - T71275L5 - T51308L5 - T51315L5 - T71209L5 - T71210L5 - T71219L5 - T71220L5 - AS0119L5

代码如下:

loop {
  Input, retrieved, V, {space}
  RegExMatch(retrieved, "\b\w\w\w\w\w\w[A-Z]\d\s", match)
  RegExMatch(match, "\b\w\w\w\w\w\w[A-Z]\d\s", output) 
  If (output != "")
    Sendinput, {bs 9}{space}%output%{space}-
}

有没有人有关于如何让它工作而不需要按任何键的建议。 只需扫描条形码。

谢谢!

1 个答案:

答案 0 :(得分:1)

有2种使用输入命令选项的解决方案

  1. 使用匹配列表选项
  

匹配列表

     

以逗号分隔的关键短语列表,其中任何一个都会导致输入被终止

命令如下:

Input, retrieved,* V,,L5

每次输入文本“ L5”时,输入将停止。 您必须确保“ L5”永远不会出现在条形码的其他任何地方,而是最后。

  1. 使用长度限制
  

L:长度限制(例如L5)。输入的最大允许长度。当文本达到此长度时,输入将终止

Input, retrieved,L8 V

输入8个字符后,输入停止。 确保您当时没有其他键盘输入。