Gui Laggt?

  • Hi Leute!

    Mein Gui besteht aus etwa 5 Guis.
    Das heisst man startet das Gui1, drückt button 2 --> gui1 wird auf "@SW_Hide" gesetzt und gui2 auf "@SW_Show".
    usw.
    Das problem ist:
    Beim wechsel von gui1 auf gui2 laggt das gui. liegt das am grossen bild?
    besonders wenn ich oft "back" drücke beginnts zu laggen.
    mfg
    Manu

  • hi
    Es Laggt beim öffnen des nächsten GUIs so, dass es zuerst z.b. den unteren und später den oberen Teil des guis anzeigt.
    Hier noch das Script:

    [autoit]

    main()

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

    While 1
    Sleep(100)
    WEnd

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

    Func main()
    Opt("GUICloseOnESC", 1)
    $SGui = GUICreate("Drucker", "320", "100")
    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")
    GUISetState(@SW_SHOW, $SGui)
    GUICtrlCreatePic(@ScriptDir & "\System\printer.bmp", "250", "0", "67", "56", $WS_CLIPSIBLINGS)
    ;GUICtrlSetTip(-1,"bla","blabla", @ScriptDir & "\System\Unused Icons\i.bmp")

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

    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
    EndFunc ;==>main

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

    Func main2()
    $Gui1 = GUICreate("Standort", "670", "881")
    Opt("GUICloseOnESC", 1)
    GUISetState(@SW_HIDE, $SGui)

    $og6 = GUICreate("Obergeschoss 6", 124, 32, 430, 780, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $obg6 = GUICtrlCreatePic(@ScriptDir & "\System\GlossyRoundButton.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\GlossyRoundButton.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\GlossyRoundButton.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\GlossyRoundButton.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\GlossyRoundButton.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\GlossyRoundButton.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)

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

    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)

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


    WinActivate('Standort', '')


    While 1
    $Msg = GUIGetMsg(1)
    Select
    Case $Msg[0] = $obg1
    $place1GUI = GUICreate("place1", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place1 = GUICtrlCreatePic(@ScriptDir & "\System\red.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)

    $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)

    GUISetState(@SW_SHOW, $place1GUI)
    GUISetState(@SW_SHOW, $place2GUI)
    GUISetState(@SW_SHOW, $place3GUI)
    $msgn = "ers"
    $n = "1"
    Dis()
    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
    back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $obg2
    $place1GUI = GUICreate("place1", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place1 = GUICtrlCreatePic(@ScriptDir & "\System\red.bmp", 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)

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

    GUISetState(@SW_SHOW, $place1GUI)
    GUISetState(@SW_SHOW, $place2GUI)
    GUISetState(@SW_SHOW, $place3GUI)
    $msgn = "zwei"
    $n = "2"
    Dis()
    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
    back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $obg3
    $place1GUI = GUICreate("place1", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place1 = GUICtrlCreatePic(@ScriptDir & "\System\red.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)

    $place3GUI = GUICreate("place3", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place3 = GUICtrlCreatePic(@ScriptDir & "\System\yellow.gif", 0, 0, 0, 0)

    GUISetState(@SW_SHOW, $place1GUI)
    GUISetState(@SW_SHOW, $place2GUI)
    GUISetState(@SW_SHOW, $place3GUI)
    $msgn = "drit"
    $n = "3"
    Dis()
    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
    back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $obg4
    $place1GUI = GUICreate("place1", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place1 = GUICtrlCreatePic(@ScriptDir & "\System\red.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)

    $place3GUI = GUICreate("place3", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place3 = GUICtrlCreatePic(@ScriptDir & "\System\yellow.gif", 0, 0, 0, 0)

    GUISetState(@SW_SHOW, $place1GUI)
    GUISetState(@SW_SHOW, $place2GUI)
    GUISetState(@SW_SHOW, $place3GUI)
    $msgn = "vier"
    $n = "4"
    Dis()
    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
    back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $obg5
    $place1GUI = GUICreate("place1", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place1 = GUICtrlCreatePic(@ScriptDir & "\System\red.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)

    $place3GUI = GUICreate("place3", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place3 = GUICtrlCreatePic(@ScriptDir & "\System\yellow.gif", 0, 0, 0, 0)

    GUISetState(@SW_SHOW, $place1GUI)
    GUISetState(@SW_SHOW, $place2GUI)
    GUISetState(@SW_SHOW, $place3GUI)
    $msgn = "fünf"
    $n = "5"
    Dis()
    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
    back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd

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

    Case $Msg[0] = $obg6
    $place1GUI = GUICreate("place1", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place1 = GUICtrlCreatePic(@ScriptDir & "\System\red.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)

    $place3GUI = GUICreate("place3", 219, 266, 77, 237, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Gui1)
    $place3 = GUICtrlCreatePic(@ScriptDir & "\System\yellow.gif", 0, 0, 0, 0)

    GUISetState(@SW_SHOW, $place1GUI)
    GUISetState(@SW_SHOW, $place2GUI)
    GUISetState(@SW_SHOW, $place3GUI)
    $msgn = "sechs"
    $n = "6"
    Dis()
    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
    back()
    WinActivate('Standort', '')
    Case $Msg[0] = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd
    Case $Msg[0] = $ButtonGui
    back()
    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("\\server1\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)
    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)
    $Msg = MsgBox(4, "Drucker", "Die Drucker im " & $msgn & "ten Stock " & $an & " " & $ort & " wurden eingerichtet. " & @CRLF & "Weitere Drucker einrichten?")
    If $Msg = 6 Then
    Sleep(200)
    main2()
    Else
    Einzeln()
    EndIf
    EndIf
    Next
    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, $Button)
    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("\\server1\swroot\Group\Public\Printers\zh\" & $n & "Obergeschoss\" & $ort, '*.lnk', 1)
    MsgBox(0, "bla", $linkname)
    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 $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
    Next
    $buttoninst = GUICtrlCreateButton($namebutton, 135, 350)
    $Button = GUICreate("back", 57, 53, 600, 10, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $Check)
    GUICtrlCreatePic(@ScriptDir & "\System\back.bmp", 0, 0, 0, 0)
    GUISetState(@SW_SHOW, $Button)
    GUISetState(@SW_SHOW, $Check)
    WinActivate($title, '')

    While 1
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $buttoninst
    For $i = 1 To $linkname[0]
    Switch $i
    Case GUICtrlRead($gui_check_[$i]) = $GUI_CHECKED
    $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)
    RunWait("rundll32 printui.dll,PrintUIEntry /in /n \\" & $srv3 & "\" & $pr2)
    standard()
    EndSwitch
    Next
    EndSwitch
    If WinActive('back', '') Then
    GUISetState(@SW_HIDE, $Button)
    GUISetState(@SW_HIDE, $Check)
    main2()
    main()
    MsgBox(0, '', 'Hi!')
    WinActivate('Standort', '')
    EndIf
    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("\\server1\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]

    Func Dis()
    GUICtrlSetState($og1, $GUI_DISABLE)
    GUICtrlSetState($og2, $GUI_DISABLE)
    GUICtrlSetState($og3, $GUI_DISABLE)
    GUICtrlSetState($og4, $GUI_DISABLE)
    GUICtrlSetState($og5, $GUI_DISABLE)
    GUICtrlSetState($og6, $GUI_DISABLE)
    EndFunc ;==>Dis

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

    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

    [/autoit]
  • Hi Manuit,

    hier mal ein Beispiel: :rolleyes:

    Spoiler anzeigen
    [autoit]


    ; by Ritzelrocker04 ==> USBv22_02.au3

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

    #include <GUIConstants.au3>
    #include <String.au3>

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

    ; Ziel
    Global $dest_LW = StringLeft(@MyDocumentsDir,2)
    ; Quelle
    Global $src_LW = StringLeft(@ScriptDir,2) & "\"

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

    $uccess = "USBsound\Success.wav"

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

    $GUI = GUICreate(" USB v 2.2", 300, 115, -1, 225, $WS_POPUPWINDOW)
    GUICtrlCreatePic("USBskin\Blau43.jpg", 0, 0, 300, 115)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $gb_Ziel = GUICtrlCreateGroup("", 64, 8, 225, 60)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $pg_Ziel = GUICtrlCreateProgress(75, 32, 195, 17)
    $bn_Pic = GUICtrlCreateButton("PicButton", 8, 14, 55, 55, $BS_BITMAP)
    GUICtrlSetImage (-1, "USBsys\images3.bmp", 22)
    $bn_Sichern = GUICtrlCreateButton("&Sichern", 126, 80, 75, 25, 0)
    GUICtrlSetState(-1, $GUI_DEFBUTTON)
    $bn_Close = GUICtrlCreateButton("&Beenden", 212, 80, 75, 25, 0)
    $bn_Autor = GUICtrlCreateButton("RR04", 2, 96, 30, 17)
    GUICtrlSetFont(-1, 8, 400, 0, "Arial")
    GUICtrlSetColor(-1, 0x808080)

    ; Quelle - The Stick - GUI
    $GUI_Stick = GUICreate(" The Stick", 300, 115, -1, 225, $WS_POPUPWINDOW)
    GUICtrlCreatePic("USBskin\Blau43.jpg", 0, 0, 300, 115)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $tb_src_Total = GUICtrlCreateInput("", 8, 20, 140, 17, $ES_READONLY)
    $tb_src_Free = GUICtrlCreateInput("", 152, 20, 140, 17, $ES_READONLY)
    $tb_src_Belegt = GUICtrlCreateInput("", 8, 70, 140, 17, $ES_READONLY)
    $tb_src_Prozent = GUICtrlCreateInput("", 152, 70, 57, 17, $ES_READONLY)
    $pg_Quelle = GUICtrlCreateProgress(8, 45, 284, 17)
    $bn_Return = GUICtrlCreateButton("zurück", 212, 80, 75, 25, 0)

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

    GUISetState(@SW_SHOW, $GUI)

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

    ; starten Func _LW_info()
    _LW_info()

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

    While 1
    $msg = GUIGetMsg(1)
    Switch $msg[1] ; window-handle
    Case $GUI
    Switch $msg[0] ; event/control-handle
    Case $bn_Pic
    GUISetState(@SW_HIDE, $GUI)
    GUISetState(@SW_SHOW, $GUI_Stick)
    Case $GUI_EVENT_CLOSE
    Exit
    Case $bn_Close
    Exit
    Case $bn_Autor
    MsgBox(64, 'About', 'The Stick v 2.2.02 Build 2008-01-03/12 ' & @CRLF & '' & @CRLF & 'Copyright by : ' & @CRLF & '' & @CRLF & 'Ritzelrocker04 ' & @CRLF & '' & @CRLF & 'Thx an das http://www.Autoit.de - Team ')
    Case $bn_Sichern
    $_Userwahlsich = MsgBox(32+4, " Sichern", "Sichern, möchten Sie fortfahren ? ")
    If $_Userwahlsich = 7 Then
    MsgBox(48, " Sichern", " ...es wurden keine Daten gesichert ! ")
    Exit
    EndIf

    RunWait('USBsys\7za.exe a -tzip "' & @MyDocumentsDir & '\My Stick\USB-Stick-0"' & @WDAY & '".zip" "' & $src_LW, @MyDocumentsDir, @SW_MINIMIZE)
    _LW_info() ; starten Func _LW_info()
    SoundSetWaveVolume(50) ;(50)Lautstärke in %
    SoundPlay($uccess, 1) ; 1 = Skript wartet, bis der Sound abgespielt ist.
    MsgBox(64, " Sicherung", " Sicherung abgeschlossen ! ")
    Exit
    EndSwitch
    Case $GUI_Stick
    Switch $msg[0]
    Case $bn_Return
    GUISetState(@SW_SHOW, $GUI)
    GUISetState(@SW_HIDE, $GUI_Stick)
    Case $GUI_EVENT_CLOSE
    GUISetState(@SW_SHOW, $GUI)
    GUISetState(@SW_HIDE, $GUI_Stick)
    EndSwitch
    EndSwitch
    WEnd

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

    ; die Funktion _LW_info()
    Func _LW_info()

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

    ; Quelle
    $VOL_Quelle = DriveGetLabel($src_LW)
    $TOTAL_Quelle = DriveSpaceTotal($src_LW)
    $FREE_Quelle = DriveSpaceFree($src_LW)
    $FREE_Quelle_Prozent = StringReplace(Round(($FREE_Quelle) / ($TOTAL_Quelle / 100), 0), ".", ",")
    $FREE_Quelle_MB = _StringAddComma(StringReplace(Round ($FREE_Quelle, 2), '.', ','), ".", ",")
    $Belegt_Quelle_MB = _StringAddComma(StringReplace(Round ($TOTAL_Quelle - $FREE_Quelle, 2), '.', ','), ".", ",")
    $TOTAL_Quelle_MB = _StringAddComma(StringReplace(Round ($TOTAL_Quelle, 2), '.', ','), ".", ",")
    $i_Progress_Quelle = StringReplace(Round(($TOTAL_Quelle - $FREE_Quelle) / ($TOTAL_Quelle / 100), 2), ".", ",")

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

    ; Ziel
    $VOL_Ziel = DriveGetLabel($dest_LW)
    $TOTAL_Ziel = DriveSpaceTotal($dest_LW)
    $FREE_Ziel = DriveSpaceFree($dest_LW)
    $FREE_Ziel_Prozent = StringReplace(Round(($FREE_Ziel) / ($TOTAL_Ziel / 100), 0), ".", ",")
    $FREE_Ziel_MB = _StringAddComma(StringReplace(Round ($FREE_Ziel, 2), '.', ','), ".", ",")
    $i_Progress_Ziel = StringReplace(Round(($TOTAL_Ziel - $FREE_Ziel) / ($TOTAL_Ziel / 100), 2), ".", ",")

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

    ; letzte Berechnungen und setzen der Ergebnisse
    ; Ziel
    GUICtrlSetData($pg_Ziel, $i_Progress_Ziel)
    GUICtrlSetData($gb_Ziel, "( " & $dest_LW & " )" & " = " & $FREE_Ziel_MB & " MB = " & $FREE_Ziel_Prozent & " % frei ")
    ; Quelle
    GUICtrlSetData($tb_src_Total, "Gesamt: " & $TOTAL_Quelle_MB & " MB")
    GUICtrlSetData($tb_src_Free, "Frei: " & $FREE_Quelle_MB & " MB")
    GUICtrlSetData($pg_Quelle, $i_Progress_Quelle)
    GUICtrlSetData($tb_src_Belegt, "Belegt: " & $Belegt_Quelle_MB & " MB")
    GUICtrlSetData($tb_src_Prozent, "Frei: " & $FREE_Quelle_Prozent & " %")

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

    EndFunc ; ==> _LW_info()

    [/autoit]

    Weiterhin viel Erfolg :!: