$nr[$q] = $q

  • Hallo!
    Ich möchte eig. alle gecheckten boxen als array speichern.

    [autoit]

    For $q = 1 To $linkname[0]
    Switch $q
    Case GUICtrlRead($gui_check_[$q]) = $GUI_CHECKED
    If $Adv = 1 Then
    Global $nr[$q + 1]
    $nr[$q] = $q
    $scnd = 1
    EndIf

    [/autoit]

    wieso gibt es mir wenn ich $nr[1] abfrage " " resp. nichts aus?
    Wie kann ich das schlauer machen?

    mfg
    Manu

  • Global $nr[$q + 1]
    Du löschst das Array immer wieder. Zuerst erstellen:
    Global $nr[1]
    In der Schleife dann
    ReDIM $nr[$q + 1]

  • Ist das so richtig?

    [autoit]

    While 1
    Global $nr[10000]
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $buttoninst
    For $q = 1 To $linkname[0]
    Switch $q
    Case GUICtrlRead($gui_check_[$q]) = $GUI_CHECKED
    If $Adv = 1 Then
    ReDIM $nr[$q + 1]
    $nr[$q] = $q
    MsgBox(0,"bla",$nr[$q])
    $scnd = 1
    EndIf

    [/autoit]
    Code
    If $nr[$i] = $i Then 
    If ^ ERROR

    was muss ich ändern??

  • Ist das so richtig?

    ...

    Code
    If $nr[$i] = $i Then 
    If ^ ERROR

    was muss ich ändern??


    Also, das Array so erstellen:

    [autoit]

    Global $nr[1]
    While 1
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $buttoninst
    For $q = 1 To $linkname[0]
    Switch $q
    Case GUICtrlRead($gui_check_[$q]) = $GUI_CHECKED
    If $Adv = 1 Then
    ReDIM $nr[$q + 1]
    $nr[$q] = $q
    MsgBox(0,"bla",$nr[$q])
    $scnd = 1
    EndIf

    [/autoit]

    #
    Aber die Abfrage sehe ich im Quelltext nirgends. Daher kann ich auch nicht sagen, was da nicht stimmt

  • Ich hab grad gemerkt, dass der Fehler in einem anderen Teil des scripts entstanden ist.
    Was muss ich hier änderen dass ich nicht wieder den Fehler "If $nr[$i] = $i Then, If ^ ERROR" erhalte?

    [autoit]

    For $i = 1 To $linkname[0]
    If $scnd = 1 Then
    If $Adv = 1 Then
    If $nr[$i] = $i Then
    $gui_check_[$i] = GUICtrlCreateRadio($pr2, 10, 20 + $i * 20, 680, 20)
    GUICtrlSetFont (-1,9, 1200)
    EndIf
    EndIf
    Else
    If $Adv = 1 Then
    $gui_check_[$i] = GUICtrlCreateCheckbox($pr2, 10, 20 + $i * 20, 680, 20)
    Else
    $gui_check_[$i] = GUICtrlCreateRadio($pr2, 10, 20 + $i * 20, 680, 20)
    EndIf
    EndIf
    Next

    [/autoit]

    mfg
    Manu

  • Was enthält denn $nr[$i] für einen Wert ???

    Mit dem Code Snippet kann ich nichts anfangen, Manu !
    Du möchtest alle 'gecheckten' Boxen speichern ? Wie soll das gehen, wenn Du sie erst in der Schleife erstellst ???

    Kannst Du noch mal deinen ganzen Code posten, bitte ?


    Gruß
    Greenhorn


  • Das wird im anderen Snippet zugewiesen, aber was bringt das denn ?
    $nr[$q] = $q
    und später dann
    If $nr[$i] = $i Then

    Da kann ja nichts anderes als True heraukommen ...

  • Genauso ist es, propagandy!

    Ich habe mir mal die Mühe gemacht und mir den ganzen Code von hier angesehen.

    Da kann natürlich gar nichts funktionieren, deshalb dachte ich Manu hat schon ein geändertes Script, dass sich besser lesen oder gar debuggen lässt.


    Gruß
    Greenhorn


  • Ich will in einer anderen Schleife die zuvor gecheckten boxen fett drucken...
    Mit dem debuggen bin ich nicht wirklich weit gekommen.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <File.au3>
    #Include <Array.au3>
    #include <String.au3>

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

    Dim $Automatisch, $Basic, $Advanced, $Delete
    Dim $ButtonGui, $obg1, $obg2, $obg3, $obg4, $obg5, $obg6, $Button
    Dim $msgn, $n, $ort, $Array, $GuiOG, $input1, $Adv, $SGui, $pic111, $Gui1
    Dim $printer, $server, $pr2, $srv3
    Dim $gui_check_1, $gui_check_2, $gui_check_3, $gui_check_4, $gui_check_5, $gui_check_6, $gui_check_7, $gui_check_8, $gui_check_9
    Dim $linkname, $read, $title, $namebutton, $z
    Dim $Place1GUI, $Place2GUI, $Place3GUI
    Dim $og1, $og2, $og3, $og4, $og5, $og6, $Place1, $Place3, $Place2
    Dim $scnd
    Global $q
    Global $nr[1]
    $an = "am"
    $scnd = 0

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

    $SGui = GUICreate("Drucker", "320", "150")
    GUICtrlCreateLabel("Wie möchten Sie die Drucker installieren?", 10, 20)
    $Automatisch = GUICtrlCreateButton("Automatisch", "5", "55", "75")
    GUICtrlSetTip(-1, "Mit dieser Funktion werden alle Drucker in der Nähe installiert.", "Automatisch einrichten")
    $Basic = GUICtrlCreateButton("Nach Standort", "85", "55", "75")
    GUICtrlSetTip(-1, "Mit dieser Funktion können sie ihren Standort angeben." & @CRLF & "Danach werden alle umliegenden Drucker installiert.", "Nach Standort einrichten")
    $Advanced = GUICtrlCreateButton("Einzeln", "165", "55", "75")
    GUICtrlSetTip(-1, "Mit dieser Funktion können sie Drucker einzeln installieren." & @CRLF & "Dazu müssen Sie den Namen des Druckers wissen.", "Einzeln einrichten")
    $Delete = GUICtrlCreateButton("Löschen", "245", "55", "75")
    GUICtrlSetTip(-1, "Mit dieser Funktion können sie Drucker löschen." & @CRLF & "Wenn Sie nicht alle löschen wollen," & @CRLF & "müssen Sie den Namen des Druckers wissen.", "Löschen")
    GUICtrlCreatePic(@ScriptDir & "\System\printer.bmp", "250", "85", "67", "56", $WS_CLIPSIBLINGS)
    GUICtrlCreateLabel("Sprache: ", 10, 105)
    GUICtrlCreateCombo ("Deutsch","80","100","80","20")
    GUICtrlSetData(-1,"Englisch","Deutsch")

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

    $Gui1 = GUICreate("Standort", "670", "881")

    $og6 = GUICreate("Obergeschoss 6", 124, 32, 430, 780, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $obg6 = GUICtrlCreatePic(@ScriptDir & "\System\GlossyRoundButton6.gif", 0, 0, 0, 0)

    $og5 = GUICreate("Obergeschoss 5", 124, 32, 280, 780, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $obg5 = GUICtrlCreatePic(@ScriptDir & "\System\GlossyRoundButton5.gif", 0, 0, 0, 0)

    $og4 = GUICreate("Obergeschoss 4", 124, 32, 130, 780, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $obg4 = GUICtrlCreatePic(@ScriptDir & "\System\GlossyRoundButton4.gif", 0, 0, 0, 0)

    $og3 = GUICreate("Obergeschoss 3", 124, 32, 430, 830, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $obg3 = GUICtrlCreatePic(@ScriptDir & "\System\GlossyRoundButton3.gif", 0, 0, 0, 0)

    $og2 = GUICreate("Obergeschoss 2", 124, 32, 280, 830, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $obg2 = GUICtrlCreatePic(@ScriptDir & "\System\GlossyRoundButton2.gif", 0, 0, 0, 0)

    $og1 = GUICreate("Obergeschoss 1", 124, 32, 130, 830, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $obg1 = GUICtrlCreatePic(@ScriptDir & "\System\GlossyRoundButton1.gif", 0, 0, 0, 0)

    $ButtonGui = GUICreate("back", 57, 53, 600, 10, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $Button = GUICtrlCreatePic(@ScriptDir & "\System\back.gif", 0, 0, 0, 0)


    $Place2GUI = GUICreate("Place2", 217, 314, 155, 435, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $Place2 = GUICtrlCreatePic(@ScriptDir & "\System\blue.gif", 0, 0, 0, 0)

    $Place1GUI = GUICreate("Place1", 219, 266, 77, 234, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $Place1 = GUICtrlCreatePic(@ScriptDir & "\System\red.gif", 0, 0, 0, 0)

    $Place3GUI = GUICreate("Place3", 359, 230, 288, 525, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $Place3 = GUICtrlCreatePic(@ScriptDir & "\System\yellow.gif", 0, 0, 0, 0)

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

    GUISetState(@SW_SHOW, $SGui)
    While 1
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $Automatisch
    Automatisch()
    Case $Basic
    Basic()
    Case $Advanced
    Advanced()
    Case $Delete
    Delete()
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

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

    If $SGui = "Advance" Then
    $Adv = 1
    Else
    $Adv = 2
    EndIf

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

    Func main2()

    GUISetState(@SW_HIDE, $SGui)
    GUISetState(@SW_SHOW, $og6)
    GUISetState(@SW_SHOW, $og5)
    GUISetState(@SW_SHOW, $og4)
    GUISetState(@SW_SHOW, $og3)
    GUISetState(@SW_SHOW, $og2)
    GUISetState(@SW_SHOW, $og1)
    GUISetState(@SW_SHOW, $ButtonGui)
    GUISetState(@SW_SHOW, $Gui1)

    $pic111 = GUICtrlCreatePic(@ScriptDir & "\System\Background12345678.bmp", "5", "5", "660", "881", $WS_CLIPSIBLINGS)

    WinActivate('Standort', '')

    While 1
    $Msg = GUIGetMsg(1)
    Select
    Case $Msg[0] = $obg1
    $msgn = "ers"
    $n = "1"
    GUISetState($og1, $GUI_DISABLE)
    GUISetState($og2, $GUI_DISABLE)
    GUISetState($og3, $GUI_DISABLE)
    GUISetState($og4, $GUI_DISABLE)
    GUISetState($og5, $GUI_DISABLE)
    GUISetState($og6, $GUI_DISABLE)
    GUISetState(@SW_SHOW, $Place3GUI)
    GUISetState(@SW_SHOW, $Place1GUI)
    While 1
    $Msg = GUIGetMsg(1)
    Select
    Case $Msg[0] = $Place1
    $ort = "Place1"
    Ort2()
    Case $Msg[0] = $Place2
    $ort = "Place2"
    $an = "an der"
    Ort2()
    Case $Msg[0] = $Place3
    $ort = "Place3"
    Ort2()
    Case $Msg[0] = $Button
    $z = 2
    hide()
    main2()
    ;back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $obg2
    GUISetState(@SW_SHOW, $Place1GUI)
    GUISetState(@SW_SHOW, $Place2GUI)
    GUISetState(@SW_SHOW, $Place3GUI)
    $msgn = "zwei"
    $n = "2"
    GUISetState($og1, $GUI_DISABLE)
    GUISetState($og2, $GUI_DISABLE)
    GUISetState($og3, $GUI_DISABLE)
    GUISetState($og4, $GUI_DISABLE)
    GUISetState($og5, $GUI_DISABLE)
    GUISetState($og6, $GUI_DISABLE)
    While 1
    $Msg = GUIGetMsg(1)
    Select
    Case $Msg[0] = $Place1
    $ort = "Place1"
    Ort2()
    Case $Msg[0] = $Place2
    $ort = "Place2"
    $an = "an der"
    Ort2()
    Case $Msg[0] = $Button
    $z = 2
    hide()
    main2()
    ;back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $obg3
    GUISetState(@SW_SHOW, $Place1GUI)
    GUISetState(@SW_SHOW, $Place2GUI)
    GUISetState(@SW_SHOW, $Place3GUI)
    $msgn = "drit"
    $n = "3"
    GUISetState($og1, $GUI_DISABLE)
    GUISetState($og2, $GUI_DISABLE)
    GUISetState($og3, $GUI_DISABLE)
    GUISetState($og4, $GUI_DISABLE)
    GUISetState($og5, $GUI_DISABLE)
    GUISetState($og6, $GUI_DISABLE)
    While 1
    $Msg = GUIGetMsg(1)
    Select
    Case $Msg[0] = $Place1
    $ort = "Place1"
    Ort2()
    Case $Msg[0] = $Place2
    $ort = "Place2"
    $an = "an der"
    Ort2()
    Case $Msg[0] = $Button
    $z = 2
    hide()
    main2()
    ;back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd

    Case $Msg[0] = $obg4
    GUISetState(@SW_SHOW, $Place2GUI)
    GUISetState(@SW_SHOW, $Place3GUI)
    $msgn = "vier"
    $n = "4"
    GUISetState($og1, $GUI_DISABLE)
    GUISetState($og2, $GUI_DISABLE)
    GUISetState($og3, $GUI_DISABLE)
    GUISetState($og4, $GUI_DISABLE)
    GUISetState($og5, $GUI_DISABLE)
    GUISetState($og6, $GUI_DISABLE)
    While 1
    $Msg = GUIGetMsg(1)
    Select
    Case $Msg[0] = $Place1
    $ort = "Place1"
    Ort2()
    Case $Msg[0] = $Place2
    $ort = "Place2"
    $an = "an der"
    Ort2()
    Case $Msg[0] = $Button
    $z = 2
    hide()
    main2()
    ;back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $obg5
    GUISetState(@SW_SHOW, $Place2GUI)
    GUISetState(@SW_SHOW, $Place3GUI)
    $msgn = "fünf"
    $n = "5"
    GUISetState($og1, $GUI_DISABLE)
    GUISetState($og2, $GUI_DISABLE)
    GUISetState($og3, $GUI_DISABLE)
    GUISetState($og4, $GUI_DISABLE)
    GUISetState($og5, $GUI_DISABLE)
    GUISetState($og6, $GUI_DISABLE)
    GUICtrlSetState($Place3, $GUI_ENABLE)
    GUICtrlSetState($Place2, $GUI_ENABLE)
    GUICtrlSetState($Place1, $GUI_ENABLE)
    While 1
    $Msg = GUIGetMsg(1)
    Select
    Case $Msg[0] = $Place1
    $ort = "Place1"
    Ort2()
    Case $Msg[0] = $Place2
    $ort = "Place2"
    $an = "an der"
    Ort2()
    Case $Msg[0] = $Button
    $z = 2
    hide()
    main2()
    ;back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd

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

    Case $Msg[0] = $obg6
    GUISetState(@SW_SHOW, $Place2GUI)
    GUISetState(@SW_SHOW, $Place3GUI)
    $msgn = "sechs"
    $n = "6"
    GUISetState($og1, $GUI_DISABLE)
    GUISetState($og2, $GUI_DISABLE)
    GUISetState($og3, $GUI_DISABLE)
    GUISetState($og4, $GUI_DISABLE)
    GUISetState($og5, $GUI_DISABLE)
    GUISetState($og6, $GUI_DISABLE)
    While 1
    $Msg = GUIGetMsg(1)
    Select
    Case $Msg[0] = $Place1
    $ort = "Place1"
    Ort2()
    Case $Msg[0] = $Place2
    $ort = "Place2"
    $an = "an der"
    Ort2()
    Case $Msg[0] = $Button
    $z = 2
    hide()
    main2()
    ;back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $ButtonGui
    ;back()
    hide()
    main2()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    EndFunc ;==>main2

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

    Func Ort2()
    If $Adv = 2 Then
    $linkname = _FileListToArray("\\Server\swroot\Group\Public\Printers\zh\" & $n & "Obergeschoss\" & $ort, '*.lnk', 1)
    If Not IsArray($linkname) Then
    MsgBox(16, "Error", "An diesem Ort sind keine Drucker vorhanden. -->" & $ort)
    hide()
    main2()
    EndIf
    For $i = 1 To $linkname[0]
    $pr = StringInStr($linkname[$i], " ", 1)
    $prLen = StringLen($linkname[$i])
    $pr3 = $prLen - $pr
    $pr2 = StringTrimRight($linkname[$i], $pr3)
    $srv = StringInStr($linkname[$i], " ", 1, 1)
    $srv2 = StringTrimLeft($linkname[$i], $srv + 3)
    $srv3 = StringTrimRight($srv2, 4)

    If $Adv = 2 Then
    RunWait("rundll32 printui.dll,PrintUIEntry /in /n \\" & $srv3 & "\" & $pr2)
    Else
    Einzeln()
    EndIf
    Next
    $Msg = MsgBox(4, "Drucker", "Die Drucker im " & $msgn & "ten Stock " & $an & " " & $ort & " wurden eingerichtet. " & @CRLF & "Weitere Drucker einrichten?")
    If $Msg = 6 Then
    hide()
    main2()
    Else
    hide()
    Einzeln()
    EndIf
    Sleep(100)
    If $Msg = 6 Then
    Sleep(100)
    Else
    Exit
    EndIf
    Else
    Einzeln()
    EndIf
    EndFunc ;==>Ort2

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

    Func Einzeln()
    GUISetState(@SW_HIDE, $Gui1)
    $Check = GUICreate($title, "670", "881")
    If $Adv = 1 Then
    GUICtrlCreatePic(@ScriptDir & "\System\check.bmp", "597", "550", "101", "89", $WS_CLIPSIBLINGS)
    Else
    GUICtrlCreatePic(@ScriptDir & "\System\check2.bmp", "597", "550", "101", "89", $WS_CLIPSIBLINGS)
    EndIf
    GUICtrlCreateLabel("Name u.s.w.", 25, 10)
    Opt("GUICloseOnESC", 1)
    $linkname = _FileListToArray("\\Server\swroot\Group\Public\Printers\zh\" & $n & "Obergeschoss\" & $ort, '*.lnk', 1)
    Dim $gui_check_[$linkname[0] + 1]
    For $i = 1 To $linkname[0]
    $pr = StringInStr($linkname[$i], " ", 1)
    $prLen = StringLen($linkname[$i])
    $pr3 = $prLen - $pr
    $pr2 = StringTrimRight($linkname[$i], $pr3)
    $srv = StringInStr($linkname[$i], " ", 1, 1)
    $srv2 = StringTrimLeft($linkname[$i], $srv + 3)
    $srv3 = StringTrimRight($srv2, 4)

    If $scnd = 1 Then
    If $Adv = 1 Then
    If $nr[$i] = $i Then ;Soll kontrollieren, ob die Checkbox abgehackt war. falls dies der fall ist muss der Text Fett gedruckt sein.
    $gui_check_[$i] = GUICtrlCreateRadio($pr2, 10, 20 + $i * 20, 680, 20)
    GUICtrlSetFont (-1,9, 1200)
    EndIf
    EndIf
    Else
    If $Adv = 1 Then
    $gui_check_[$i] = GUICtrlCreateCheckbox($pr2, 10, 20 + $i * 20, 680, 20)
    Else
    $gui_check_[$i] = GUICtrlCreateRadio($pr2, 10, 20 + $i * 20, 680, 20)
    EndIf
    EndIf
    Next
    $buttoninst = GUICtrlCreateButton($namebutton, 135, 350)
    GUISetState(@SW_SHOW, $Check)
    WinActivate($title, '')

    While 1
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $buttoninst
    For $q = 1 To $linkname[0]
    Switch $q
    Case GUICtrlRead($gui_check_[$q]) = $GUI_CHECKED
    If $Adv = 1 Then
    ReDIM $nr[$q + 1]
    $nr[$q] = $q;Soll speichern welche Radioboxen Fettgedruckt sein müssen
    MsgBox(0,"bla",$nr[$q])
    $scnd = 1
    EndIf

    GUICtrlSetState (-1,$GUI_UNCHECKED)
    $pr = StringInStr($linkname[$q], " ", 1)
    $prLen = StringLen($linkname[$q])
    $pr3 = $prLen - $pr
    $pr2 = StringTrimRight($linkname[$q], $pr3)
    $srv = StringInStr($linkname[$q], " ", 1, 1)
    $srv2 = StringTrimLeft($linkname[$q], $srv + 3)
    $srv3 = StringTrimRight($srv2, 4)
    RunWait("rundll32 printui.dll,PrintUIEntry /in /n \\" & $srv3 & "\" & $pr2)
    standard()
    EndSwitch
    Next
    If $Adv = 1 Then
    Einzeln()
    EndIf
    EndSwitch
    WEnd
    EndFunc ;==>Einzeln

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

    Func Basic()
    $Adv = 2
    $title = "Standarddrucker einrichten"
    $namebutton = "Als Standard einrichten"
    main2()
    EndFunc ;==>Basic

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

    Func Delete()
    $Del = GUICreate("Löschen?", 300, 100)
    GUISetState(@SW_HIDE, $SGui)
    GUISetState(@SW_SHOW, $Del)
    $Del = GUICtrlCreateLabel("Dieser Vorgang löscht alle ihre" & @CRLF & "Netzwerkdrucker. Wollen sie fortsetzen?", 10, 10)
    GUICtrlCreatePic(@ScriptDir & "\System\Delete.bmp", "208", "0", "92", "97", $WS_CLIPSIBLINGS)
    $ok = GUICtrlCreateButton("Ok", 50, 60, 60)
    $no = GUICtrlCreateButton("Nein", 150, 60, 60)

    While 1
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $ok
    RunWait("\\Server\software\Admin_Tools\Microsoft\Diverse\Printing\con2prt /f")
    Exit
    Case $no
    Exit
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd
    EndFunc ;==>Delete

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

    Func standard()
    If $Adv = 2 Then
    RunWait("rundll32 printui.dll,PrintUIEntry /in /n \\" & $srv3 & "\" & $pr2 & "/y")
    EndIf
    EndFunc ;==>standard

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

    Func Advanced()
    $Adv = 1
    $title = "Einzeln einrichten"
    $namebutton = "Installieren"
    main2()
    EndFunc ;==>Advanced

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

    Func Automatisch()
    MsgBox(0, "Automatic", "Automatisch")
    EndFunc ;==>Automatisch

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

    Func IsChecked($control)
    Return BitAND(GUICtrlRead($control), $GUI_CHECKED) = $GUI_CHECKED
    EndFunc ;==>IsChecked

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

    #cs
    Func back()
    GUISetState(@SW_HIDE, $Gui1)
    If $z = 2 Then
    main2()
    Else
    GUISetState(@SW_HIDE, $Button)
    GUISetState(@SW_HIDE, $og1)
    GUISetState(@SW_HIDE, $og2)
    GUISetState(@SW_HIDE, $og3)
    GUISetState(@SW_HIDE, $og4)
    GUISetState(@SW_HIDE, $og5)
    GUISetState(@SW_HIDE, $og6)
    GUISetState(@SW_HIDE, $Place1GUI)
    GUISetState(@SW_HIDE, $Place2GUI)
    GUISetState(@SW_HIDE, $Place3GUI)
    main()
    EndIf
    EndFunc ;==>back
    #ce

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

    Func hide()
    GUISetState(@SW_HIDE, $ButtonGui)
    GUISetState(@SW_HIDE, $og1)
    GUISetState(@SW_HIDE, $og2)
    GUISetState(@SW_HIDE, $og3)
    GUISetState(@SW_HIDE, $og4)
    GUISetState(@SW_HIDE, $og5)
    GUISetState(@SW_HIDE, $og6)
    GUISetState(@SW_HIDE, $Place1GUI)
    GUISetState(@SW_HIDE, $Place2GUI)
    GUISetState(@SW_HIDE, $Place3GUI)
    EndFunc

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

    While 1
    Sleep(100)
    WEnd

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

    Danke für eure Bemühungen!

    mfg
    Manu

    Edit BugFix: Es gibt einen SPOILER! (hiermit gesetzt)

    Einmal editiert, zuletzt von BugFix (30. Januar 2008 um 12:24)

    • Offizieller Beitrag
    [autoit]

    ReDIM $nr[$q + 1]
    $nr[$q] = $q

    [/autoit]

    Was soll das bedeuten? Wieso änderst du die Größe von $nr in Abhängigkeit von $q?

    Hier tritt ein schon öfter angesprochenes Problem auf: Variablennamen ohne Sachbezug.
    Ich hab keine Ahnung, welche Rolle $q bei dir spielt und aufgrund der Skriptgröße auch keine Lust zu suchen ob ich es herausfinde.
    Es ist wesentlich einfacher (auch für dich, wenn du später nochmal in dein Skript schaust) Variablennamen zu verwenden, die einen eindeutigen Bezug auf ihre Aufgabe zulassen. Sonst ist es für einen Außenstehenden bei großen Skripten nicht zumutbar, das nachzuvollziehen.

  • $nr[1] = 1 (wenn checkbox 1 gecheckt wurde)
    $nr[2] = 2 (wenn checkbox 2 gecheckt wurde)
    u.s.w.

    Ich werde mir deinen Tipp zu Herzen nehmen.

    PS: Wenn ich den Spoiler setze, ist mein Code nicht mehr eingerückt...
    - Ausserdem laggts beim schreiben wenn ich den Code eingefügt habe...
    Ich probiers nächstes Mal wieder, einen Spoiler zu setzen.