assassin 发表于 2008-5-8 18:12:23

请教怎么自动分段输入序列号?形如xxxx-xxxx

如图,我想实现,在输入CD-KEY的时候,每输入5个字符光标就自动切换到下一文本框,请问怎么现实。

[ 本帖最后由 assassin 于 2008-5-12 13:44 编辑 ]

assassin 发表于 2008-5-9 08:03:11

还是不太明白,请回答的具体一点好吗?最好给出代码,谢谢

assassin 发表于 2008-5-9 10:12:16

谢谢您的解答,现在的问题是不知道怎么调用,或是什么时候调用
比如HTML里可以用OnChange来调用,在Autoit里怎么调用呢?

assassin 发表于 2008-5-9 16:02:32

没人知道吗?知道的请指教!

assassin 发表于 2008-5-12 09:04:52

我打算在文本框内容有变化的时候调用自定义的检查函数

漠北雪~狼 发表于 2008-5-12 10:41:57

Opt("GUIOnEventMode", 1)
#include <GUIConstants.au3>
Global $Inp, $Chk = 0
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 525, 136, 193, 125)
GUISetOnEvent($GUI_EVENT_CLOSE, "quit")
$Inp = GUICtrlCreateInput("", 32, 56, 89, 21)
$Inp = GUICtrlCreateInput("", 128, 56, 89, 21)
$Inp = GUICtrlCreateInput("", 224, 56, 89, 21)
$Inp = GUICtrlCreateInput("", 320, 56, 81, 21)
$Inp = GUICtrlCreateInput("", 408, 56, 81, 21)
For $I = 0 To 4
        GUICtrlSetLimit($Inp[$I], 5)
Next
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
        If $Chk = 0 Then ChkInp()
        Sleep(100)
WEnd

Func ChkInp()
        Local $I
        For $I = 4 To 0 Step - 1
                If StringLen(GUICtrlRead($Inp[$I])) = 5 Then
                        If $I = 4 Then
                                MsgBox(0, 0, GUICtrlRead($Inp) & "-" & GUICtrlRead($Inp) & "-" & GUICtrlRead($Inp) _
                                               & "-" & GUICtrlRead($Inp) & "-" & GUICtrlRead($Inp))
                                $Chk = 1
                                ExitLoop
                        EndIf
                        If StringLen(GUICtrlRead($Inp[$I + 1])) = 0 Then
                                GUICtrlSetState($Inp[ $I + 1 ], $GUI_Focus)
                                ExitLoop
                        EndIf
                EndIf
                If $I = 0 And StringLen(GUICtrlRead($Inp[$I])) = 0 Then GUICtrlSetState($Inp[ $I ], $GUI_Focus)
        Next
EndFunc   ;==>ChkInp

Func quit()
        Exit
EndFunc   ;==>quit

不知这个能达到楼主想要的效果么?没什么间,所以没注解。如果其中的某个地方不清楚,楼主可以跟贴问我。










[

[ 本帖最后由 漠北雪~狼 于 2008-5-12 10:45 编辑 ]

assassin 发表于 2008-5-12 13:44:07

谢谢,这个可以达到我的要求。

redapple2008 发表于 2008-11-6 09:52:51

正确的序列号 没有显示出来
页: [1]
查看完整版本: 请教怎么自动分段输入序列号?形如xxxx-xxxx