Autohotkey 自动热键添加使前面的0保持不变

Autohotkey 自动热键添加使前面的0保持不变,autohotkey,Autohotkey,我现在正在重新学习AHK,我遇到了一个似乎无法解决的问题 在我的表单上有一个文本框,默认设置为:0000 当我点击“开始”按钮时,我需要在循环的每次迭代中添加1 IE:0001、0002、0003、0004等 我试着在谷歌上搜索,看看是否有答案,但没有结果。到目前为止,我所掌握的一切都删除了前面的0 guiControlGet, txtLst,, last tot := %txtLst%+1 我也试过:tot:=1+%txtLst%和类似的:tot:=0001+%txtLst%都没有用 欢迎

我现在正在重新学习AHK,我遇到了一个似乎无法解决的问题

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

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

IE:0001、0002、0003、0004等

我试着在谷歌上搜索,看看是否有答案,但没有结果。到目前为止,我所掌握的一切都删除了前面的0

guiControlGet, txtLst,, last

tot := %txtLst%+1
我也试过:
tot:=1+%txtLst%
和类似的:
tot:=0001+%txtLst%
都没有用


欢迎提出任何建议。我什么都可以试试。

你把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
将在计时器第一次调用
Add
时产生
0.000100
StringTrimLeft
StringTrimRight
可用于删除前两个字符和后两个字符

如果出于某种原因,您始终希望前面有三个零:

number := 0000

SetTimer, Add, 1000

Add:
number += 1
OutputVar := 000 number
traytip,, %OutputVar%
Return
手册参考资料:




您将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
将在计时器第一次调用
Add
时产生
0.000100
StringTrimLeft
StringTrimRight
可用于删除前两个字符和后两个字符

如果出于某种原因,您始终希望前面有三个零:

number := 0000

SetTimer, Add, 1000

Add:
number += 1
OutputVar := 000 number
traytip,, %OutputVar%
Return
手册参考资料:



你试过这个吗

ProcessCounter := 1
Processed = % Edit Point . SubStr("0000"ProcessCounter, -3)
msgbox, %Processed%
你试过这个吗

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

我添加了另一个示例,以防您希望字体中始终有三个零。在表达式中,变量不被
%
s包围。
:=
后面的任何内容都被解释为表达式。我添加了另一个示例,以防您只需要在字体中始终使用三个零。在表达式中,变量不被
%
s包围。
:=
后面的任何内容都被解释为表达式。