Jump to content

Help creating licence key input box


Recommended Posts

Hi all,

i am struggeling with a problem creating a input box wich will automatic seperate the input letters with a - after 5 characters.

example: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

i all ready have it limited to 29 characters and max of 29 characters.

I hope any one can help me with this.

The purpose for the script is, an automatic network installation of Windows 8.

forum post.au3

Link to comment
Share on other sites

  • Moderators

Wingens,

Something like this perhaps? :huh:

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>

Global $iChar_Limit = 5, $aInput[5]

$hGUI = GUICreate("Input Autofocus", 500, 500)

; ######################
; It is important that these controls are created in immediate succession
For $i = 0 To UBound($aInput) - 1
    $aInput[$i] = GUICtrlCreateInput("", 20 + (60 * $i), 20, 40, 20)
    GUICtrlSetLimit(-1, $iChar_Limit)
    If $i Then
        GUICtrlSetState(-1, $GUI_DISABLE)
    EndIf
Next
$hButton = GUICtrlCreateButton("OK", 75, 60, 80, 30)
GUICtrlSetState(-1, $GUI_DISABLE)
; ######################

For $i = 0 To 3
    GUICtrlCreateLabel("-", 70 + (60 * $i), 20, 10, 20)
Next

GUIRegisterMsg($WM_COMMAND, "On_WM_COMMAND")

GUISetState()

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
        Case $hButton
            $sString = ""
            For $i = 0 To UBound($aInput) - 1
                $sString &= GUICtrlRead($aInput[$i])
            Next
            MsgBox(0, "Result", $sString)
    EndSwitch
WEnd

Func On_WM_COMMAND($hWnd, $Msg, $wParam, $lParam)

    $iCode = BitShift($wParam, 16)
    $iID = BitAND($wParam, 0x0000FFFF)

    Switch $iCode
        Case $EN_UPDATE ; 0x400 ;
            If StringLen(GUICtrlRead($iID)) = $iChar_Limit Then
                GUICtrlSetState($iID + 1, $GUI_ENABLE)
                GUICtrlSetState($iID + 1, $GUI_FOCUS)
            EndIf
    EndSwitch

EndFunc   ;==>On_WM_COMMAND

Please ask if you have any questions. :)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...