autohotkey加入前0完整

时间:2012-08-15 06:19:57

标签: autohotkey

我正在重新学习AHK,而且我遇到了一个我似乎无法弄清楚的问题。

在我的表单上,我有一个文本框,默认设置为:0000

当我点击“开始”按钮时,我需要在循环的每次迭代中为此添加1 ..

IE:0001:0002,0003,0004等。

我尝试搜索谷歌以查看是否有答案,但无济于事。到目前为止我得到的所有东西都删除了前面的0。

guiControlGet, txtLst,, last

tot := %txtLst%+1

我也尝试过:tot := 1+%txtLst%和类似tot := 0001 + %txtLst%之类的东西都无济于事。

欢迎提出任何建议。我会尝试任何事情。

2 个答案:

答案 0 :(得分:1)

您将0000视为整数。没有这样的整数0001 你需要做浮点加法 以下是使用计时器的测试示例:

number := 0000

SetTimer, Add, 1000

Add:
number += 0.0001
StringTrimLeft, temp, number, 2
StringTrimRight, OutputVar, temp, 2 
traytip,, %OutputVar%
Return
第一次定时器调用number += 0.0001时,

0.000100会产生Add StringTrimLeftStringTrimRight可用于删除第一个和最后两个字符。

如果出于某种原因,您始终需要前面三个零:

number := 0000

SetTimer, Add, 1000

Add:
number += 1
OutputVar := 000 number
traytip,, %OutputVar%
Return

手动参考:
SetTimer
+=
StringTimLeft
StringTrimRight

答案 1 :(得分:0)

你试过这个......

ProcessCounter := 1
Processed = % Edit Point . SubStr("0000"ProcessCounter, -3)
msgbox, %Processed%