Input immer abfragen

  • ciao!
    Ich brauche Tipps und Verbesserungsvorschläge.
    Was soll ich anders machen, was kann ich besser machen, sauberer usw. ?

    [autoit]

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

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    Opt('GUIOnEventMode', 1)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    $Form1 = GUICreate("Form1", 300, 200, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    $Input1 = GUICtrlCreateInput("", 70, 72, 169, 21)
    $Input2 = GUICtrlCreateInput("", 70, 104, 169, 21)
    $btn = GUICtrlCreateButton("OK", 110, 140, 100, 30)
    GUICtrlSetState($btn, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    While 1
    Sleep(1)

    [/autoit][autoit][/autoit][autoit]

    If GUICtrlRead($Input1) = "Username" Then
    $check_username = 0
    ElseIf GUICtrlRead($Input1) = "" Then
    $check_username = 0
    Else
    $check_username = 1
    EndIf

    [/autoit][autoit][/autoit][autoit]

    If $check_username == 1 And $check_pw == 1 Then
    GUICtrlSetState($btn, $GUI_Enable)
    Else
    GUICtrlSetState($btn, $GUI_DISABLE)
    EndIf

    [/autoit][autoit][/autoit][autoit]

    If GUICtrlRead($Input2) = "Passwort" Then
    $check_pw = 0
    ElseIf GUICtrlRead($Input2) = "" Then
    $check_pw = 0
    Else
    $check_pw = 1
    EndIf

    [/autoit][autoit][/autoit][autoit]

    WEnd

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    Func _End()
    Exit
    EndFunc ;==>_End

    [/autoit][autoit][/autoit][autoit][/autoit]
  • hab kA für was des is aba bissel verschönert ^^

    Spoiler anzeigen
    [autoit]

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

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Opt('GUIOnEventMode', 1)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("Form1", 300, 200, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    $Input1 = GUICtrlCreateInput("", 70, 72, 169, 21)
    $Input2 = GUICtrlCreateInput("", 70, 104, 169, 21)
    $btn = GUICtrlCreateButton("OK", 110, 140, 100, 30)
    GUICtrlSetState($btn, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While 1
    Sleep(100)

    [/autoit] [autoit][/autoit] [autoit]

    If GUICtrlRead($Input1) = "Username" Then
    $check_username = 0
    ElseIf GUICtrlRead($Input1) = "" Then
    $check_username = 0
    Else
    $check_username = 1
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If $check_username == 1 And $check_pw == 1 Then
    GUICtrlSetState($btn, $GUI_Enable)
    Else
    GUICtrlSetState($btn, $GUI_DISABLE)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If GUICtrlRead($Input2) = "Passwort" Then
    $check_pw = 0
    ElseIf GUICtrlRead($Input2) = "" Then
    $check_pw = 0
    Else
    $check_pw = 1
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _End()
    Exit 0
    EndFunc ;==>_End

    [/autoit]

    sleep verlänger und ExitCode gesetzt ;) sagma für was des sein soll ^^ sonnst kann niemand verbesserungs vorschläge machen

    mfg

  • danke.
    Kennt einer Mumble ? :D
    .
    Eine selbständige Mumble installation bis auf die Benutzerdaten
    Die soll der Benutzer am Anfang eingeben und somit werden dann Username und PW ausgelesen und weiter verwendet. :)
    Sollte ich die Abfragen lieber so gestalten mit StringInStr ?

    Einmal editiert, zuletzt von satinez (17. März 2009 um 09:55)

  • Hi satinez,

    Du kannst hier noch Funktionen sparen:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt('GUIOnEventMode', 1)

    [/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("satinez-GUI", 300, 200, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    $Input1 = GUICtrlCreateInput("", 70, 72, 169, 21)
    $Input2 = GUICtrlCreateInput("", 70, 104, 169, 21)
    $btn = GUICtrlCreateButton("OK", 110, 140, 100, 30)
    GUICtrlSetState($btn, $GUI_DISABLE)

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While 1
    Sleep(100)

    [/autoit] [autoit][/autoit] [autoit]

    $Inputeins = GUICtrlRead($Input1)
    $Inputzwei = GUICtrlRead($Input2)

    [/autoit] [autoit][/autoit] [autoit]

    If $Inputeins = "Username" Or $Inputeins = "" Then
    $check_username = 0
    Else
    $check_username = 1
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If $check_username == 1 And $check_pw == 1 Then
    GUICtrlSetState($btn, $GUI_Enable)
    Else
    GUICtrlSetState($btn, $GUI_DISABLE)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If $Inputzwei = "Passwort" Or $Inputzwei = "" Then
    $check_pw = 0
    Else
    $check_pw = 1
    EndIf
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _End()
    Exit 0
    EndFunc ;==>_End

    [/autoit] [autoit][/autoit] [autoit]

    ; Ende

    [/autoit]


    Viel Erfolg ! :)

  • Du könntest dir immer noch paar zeilen sparen.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt('GUIOnEventMode', 1)

    [/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("satinez-GUI", 300, 200, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    $Input1 = GUICtrlCreateInput("", 70, 72, 169, 21)
    $Input2 = GUICtrlCreateInput("", 70, 104, 169, 21)
    $btn = GUICtrlCreateButton("OK", 110, 140, 100, 30)
    GUICtrlSetState($btn, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    Sleep(100)

    [/autoit] [autoit][/autoit] [autoit]

    If GUICtrlRead($Input1) = "Username" Or GUICtrlRead($Input1) = "" Then
    $check_username = 0
    Else
    $check_username = 1
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If $check_username == 1 And $check_pw == 1 Then
    GUICtrlSetState($btn, $GUI_Enable)
    Else
    GUICtrlSetState($btn, $GUI_DISABLE)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If GUICtrlRead($Input2) = "Passwort" Or GUICtrlRead($Input2) = "" Then
    $check_pw = 0
    Else
    $check_pw = 1
    EndIf
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _End()
    Exit 0
    EndFunc ;==>_End
    ; Ende

    [/autoit]
    • Offizieller Beitrag
    Spoiler anzeigen
    [autoit]

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

    [/autoit] [autoit][/autoit] [autoit]

    Opt('GUIOnEventMode', 1)

    [/autoit] [autoit][/autoit] [autoit]

    GUICreate("satinez-GUI", 300, 200, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    $Input1 = GUICtrlCreateInput("", 70, 72, 169, 21)
    $Input2 = GUICtrlCreateInput("", 70, 104, 169, 21)
    $btn = GUICtrlCreateButton("OK", 110, 140, 100, 30)
    GUICtrlSetState($btn, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    GUIRegisterMsg($WM_COMMAND, "MY_WM_COMMAND")

    [/autoit] [autoit][/autoit] [autoit]

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    [/autoit] [autoit][/autoit] [autoit]

    Func _end()
    Exit (0)
    EndFunc ;==>_end

    [/autoit] [autoit][/autoit] [autoit]

    Func MY_WM_COMMAND($hWnd, $msg, $wParam, $lParam)
    Local $controlID = _WinAPI_LoWord($wParam)
    If $controlID = $Input1 Or $controlID = $Input2 Then
    If StringLen(GUICtrlRead($Input1)) > 0 And StringLen(GUICtrlRead($Input2)) > 0 Then
    GUICtrlSetState($btn, $GUI_ENABLE)
    Else
    GUICtrlSetState($btn, $GUI_DISABLE)
    EndIf
    ; hier jegliche Logik rein.
    EndIf
    EndFunc ;==>MY_WM_COMMAND

    [/autoit]

    Mega

  • nice! Danke..sehr Interessant.
    .
    Einen Fehler bei mir..
    Wenn beide Inputs gefüllt sind, verschwindet mein Mauszeiger.