需要帮助 - 使用Autohotkey脚本的简单随机数生成器

时间:2014-10-25 16:48:21

标签: random numbers generator autohotkey

我已阅读Auto Hot Key的文档,但我是编写脚本的新手。我一直在收到错误。

我想要一个非常简单的脚本 - 所以当我使用热键 CTRL - ALT - N - Autohotkey创建一个随机数:

3位 - 小数 - 8位

第一组的第一个数字介于1和4之间。

其余的可以完全随机。

关闭我尝试编辑一个帖子的示例脚本 - 但我做错了。如果有人可以提供帮助,我们将非常感激!

输出应如下所示:314.99382028第一个数字始终在1到4之间,其余为随机数,小数始终为第4个字符。

然后,它应该只是将数字粘贴到您当前在Windows中的位置 - 而不是弹出显示。

感谢所有能够快速查看并提供帮助的人。

火箭

^!n:: ;<-- change this if you want a diff hotkey
Chars1 = 1234
Chars2 = 1234567890
Chars3 = .
str =
clipboard =
UpperRange = 3 ;<-- use all 3 character strings
len = 12 ;<-- number of characters in the number

; generate a new number
loop, %len%
{ random,x,1,%UpperRange% ;<-- selects the Character string
random,y,1,26 ;<-- selects the character in the string
if (x = 12) ; if numeric there are only 10 digits
}
{ random,y,1,10
StringMid,z,Chars%x%,1 ;<-- grab the selected letter
str = %str%%z% ;<-- and add it to the number string
}
clipboard = %str% ;<-- put the completed string on the clipboard
Clipwait ;<-- wait for the clipboard to accept the string`

然后我的咖喱就在那里 - 不知道怎么做。

非常感谢你的帮助!

火箭

2 个答案:

答案 0 :(得分:1)

由于您的剪贴板上有答案,因此您只需使用:

Send, ^v

这将粘贴您的插入符号,而不是鼠标光标,因此如果要粘贴鼠标光标所在的位置,只需在...之前添加Click。

Click
Sleep, 30
Send, ^v

答案 1 :(得分:1)

如果我理解正确的话,这应该可以胜任:

^!n::
    SendInput, % "{LButton}" . RandomString(1,"1234") . RandomString(2) . "." . RandomString(8)
Return

RandomString(length,chars:="0123456789") {
    charsCount := StrLen(chars)
    Loop % length {
        Random, num, 1, % StrLen(chars)
        string .= SubStr(chars,num,1)
    }
    Return string
}