Hallo Gemeinde,
ich hoffe ich werde nicht gleich erschlagen wenn ich jetzt mit so einer (für euch ) doofen Anfänger frage komme. (Ich finde aber irgendwie nicht die Lösung)
Folgendes: Ich hab mir ein Fenster gebaut, links ein paar Button's die rechts ein Child Fenster öffnen mit etwas darin.
Sobald ich nun einen Button links klicke, bin ich im Child in einer Schleife. Die Schleife ist nötig, ich muss ja was tun. Ich komme aus der Schleife nicht ohne ExitLoop raus.
Nun meine Frage, was muß ich tun, damit ich im Menü links weiter klicken kann ohne im Child Fenster einen Button zu drücken?
Spoiler anzeigen
#include <StaticConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Include <GuiButton.au3>
#include <DateTimeConstants.au3>
#include <EditConstants.au3>
#include <WinAPIFiles.au3>
#include <Array.au3>
#include <File.au3>
#include <MsgBoxConstants.au3>
#Region
;----------- Hauptfenster deninieren ----------------------------------------
Global $MainGui = GUICreate("StreamGui",1200,950,-1,-1,-1,-1)
GUICtrlSetTip(-1,"Dux Dateien vom Entwicklungsserver zum Testserver kopieren")
;----------- Definition der Menübuttons -------------------------------------
Global $BtnDuxKopie = GUICtrlCreateButton("Dux Kopie",21,187,100,30,-1,-1)
_GUICtrlButton_SetFocus ( $BtnDuxKopie, $BST_INDETERMINATE = True)
GUICtrlSetTip(-1,"Dux Dateien kopieren")
Global $BtnOverlayLxf = GUICtrlCreateButton("Overlay lxf",21,247,100,30,-1,-1)
_GUICtrlButton_SetFocus($BtnOverlayLxf)
GUICtrlSetTip(-1,"Overlay's mit Endung .lxf kopieren")
Global $BtnOverlayTab = GUICtrlCreateButton("Overlay .tab",21,307,100,30,-1,-1)
GUICtrlSetTip(-1,"Overlay's mit Endung .tab kopieren")
_GUICtrlButton_SetFocus($BtnOverlayTab)
Global $BtnLanguage = GUICtrlCreateButton("Language",21,367,100,30,-1,-1)
GUICtrlSetTip(-1,"Language.sls kopieren.")
Global $BtnFunktionFile = GUICtrlCreateButton("Funnktion File",21,427,100,30,-1,-1)
GUICtrlSetTip(-1,"Funktion Fieles auswählen und kopieren.")
Global $BtnLogDatei = GUICtrlCreateButton("Logdateien",21,607,100,30,-1,-1)
GUICtrlSetTip(-1,"Logdateien prüfen, sehen ob alles richtig gelaufen ist.")
Global $BtnEinstellungen = GUICtrlCreateButton("Einstellungen",21,664,100,30,-1,-1)
GUICtrlSetTip(-1,"Die Programm Einstellungen prüfen oder ändern.")
Global $BtnEnde = GUICtrlCreateButton("Ende",21,778,100,30,-1,-1)
GUICtrlSetTip(-1,"Programm beenden.")
;---------------Kopfzeilen definieren ------------------------------------------
GUICtrlCreateLabel("StreamServ Entwicklung nach Test.",380,30,331,47,-1,-1)
GUICtrlSetFont(-1,15,400,0,"MS Sans Serif")
GUICtrlSetBkColor(-1,"-2")
$RFC_Nr = GUICtrlCreateInput("20",510,100,150,20,-1,$WS_EX_CLIENTEDGE)
GUICtrlSetFont(-1,10,400,0,"MS Sans Serif")
GUICtrlSetTip(-1,"Geben Sie bitte die RFC Nummer ein.")
GUICtrlCreateLabel("RFC Nr.:",428,104,68,20,-1,-1)
GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateLabel("Programmierer:",380,140,116,24,-1,-1)
GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
GUICtrlSetBkColor(-1,"-2")
$Programmierer = GUICtrlCreateInput("",510,140,150,20,-1,$WS_EX_CLIENTEDGE)
GUICtrlSetFont(-1,10,400,0,"MS Sans Serif")
GUICtrlSetTip(-1,"Geben Sie bitte den Namen des Programmieres ein.")
GUICtrlCreateLabel("Datum:",442,185,50,15,-1,-1)
GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateDate("Saturday, 1. January 2011",510,179,186,21,-1,-1)
$Notizen = GUICtrlCreateInput("",835,100,236,105,-1,$WS_EX_CLIENTEDGE)
GUICtrlCreateLabel("Notitzen:",760,100,60,15,-1,-1)
GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateLabel("Sie sind angemeldet als: " & @UserName ,760,50,400)
GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
GUICtrlSetBkColor(-1,"-2")
GUISetState(@SW_SHOW)
Global $ChildBreite = 1000
Global $ChildHoehe = 700
#EndRegion
;---------------Programm start ------------------------------------------
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ExitLoop
;======================================================================================================================================
; DUX Dateien kopieren
;======================================================================================================================================
Case $BtnDuxKopie
$DuxGUI = GUICreate("", $ChildBreite, $ChildHoehe, 170, 220, BitOR($WS_POPUP, $WS_BORDER), $WS_EX_TOPMOST)
GUISetBkColor(0xfffaf0, $DuxGUI)
$BtnKopieOk = GUICtrlCreateButton("Kopie", 800, 500, 90, 20)
$BtnKopieCancel = GUICtrlCreateButton("Cancel", 800, 600, 90, 20)
GUISetState(@SW_SHOW, $DuxGUI)
DllCall("user32.dll", "int", "SetParent", "hwnd", WinGetHandle($DuxGUI), "hwnd", WinGetHandle($MainGui))
GUICtrlCreateLabel("Dux File.:",260,100,70,20,-1,-1)
GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
GUICtrlSetBkColor(-1,"-2")
$DuxDatei = GUICtrlCreateInput("",340,100,150,20,-1,$WS_EX_CLIENTEDGE)
$EingabeFile = GUICtrlRead(26)
While 1
$nMsg = GUIGetMsg()
switch $nMsg
Case $BtnKopieOk
$DevDuxPath = IniRead("Settings.ini", "pfade", "Dev_Dux","" )
$DevEventPath = IniRead("Settings.ini", "pfade", "Dev_Event","" )
$DevProcessPath = IniRead("Settings.ini", "pfade", "Dev_Process","" )
Local $aFileList = _FileListToArray($DevDuxPath, $EingabeFile)
If @error = 1 Then
MsgBox($MB_SYSTEMMODAL, "Fehler 1", "Path was invalid.")
ExitLoop
EndIf
If @error = 4 Then
MsgBox($MB_SYSTEMMODAL, "Fehler 4", $DevDuxPath & $EingabeFile)
ExitLoop
EndIf
; Display the results returned by _FileListToArray.
_ArrayDisplay($aFileList, "$aFileList")
ExitLoop
Case $BtnKopieCancel
ExitLoop
EndSwitch
WEnd
;======================================================================================================================================
; Overlay LXF Dateien kopieren
;======================================================================================================================================
Case $BtnOverlayLxf
$OverlayLxfGui = GUICreate("", $ChildBreite, $ChildHoehe, 170, 220, BitOR($WS_POPUP, $WS_BORDER), $WS_EX_TOPMOST)
GUISetBkColor(0xfffaf0, $OverlayLxfGui)
$BtnCancel = GUICtrlCreateButton("Cancel", 800, 500, 90, 20)
$BtnLxfAusw = GUICtrlCreateButton("Dateien", 400, 300, 90, 20)
$BtnOk = GUICtrlCreateButton("OK", 700, 500, 90, 20)
GUISetState(@SW_SHOW, $OverlayLxfGui)
DllCall("user32.dll", "int", "SetParent", "hwnd", WinGetHandle($OverlayLxfGui), "hwnd", WinGetHandle($MainGui))
GUICtrlCreateLabel("Overlay Dateien Kopieren.",260,100,300,20,-1,-1)
GUICtrlSetFont(-1,10,700,0,"MS Sans Serif")
GUICtrLCreateLabel("Klicken Sie auf den Button Datein, im darauf folgenden Fenster wählen Sie die zu übernehmenden Datein aus.", 260, 140)
GUICtrLCreateLabel("Drücken Sie danach auf den OK Butten, anschließend werden die ausgeählten Dateien noch einmal angezeigt.", 260, 160)
GUICtrlCreateLabel("Ein weitere Klick auf OK erstellt eine Sicherungskopie der Orginaldatein und kopiert die Dateien auf den TestServer.", 260, 180)
GUICtrlSetBkColor(-1,"-2")
EndSwitch
WEnd
#cs
While 1
$aMsg = GUIGetMsg()
Switch $aMsg
Case $BtnLxfAusw
; Create a constant variable in Local scope of the message to display in FileOpenDialog.
Local $sMessage = "Um mehrere Dateien auszuwählen, die Taste [Strg] oder [Shift] gedrückt halten."
; Display an open dialog to select a list of file(s).
Local $sFileOpenDialog = FileOpenDialog($sMessage, @WindowsDir & "\", "Images (*.jpg;*.bmp; *.*)|Videos (*.avi;*.mpg)", BitOR($FD_FILEMUSTEXIST, $FD_MULTISELECT))
If @error Then
; Display the error message.
MsgBox($MB_SYSTEMMODAL, "", "Sie haben keine Datei ausgewählt.")
ExitLoop
Else
; Replace instances of "|" with @CRLF in the string returned by FileOpenDialog.
$sFileOpenDialog = StringReplace($sFileOpenDialog, "|", @CRLF)
; Display the list of selected files.
MsgBox(0, "", "Sie haben folgende Dateien ausgewählt:" & @CRLF & $sFileOpenDialog)
ExitLoop
EndIf
; KopieLxf()
Case $BtnCancel
ExitLoop
MsgBox(0, "", "raus oder nicht")
Case $BtnDuxKopie
ExitLoop
Case $BtnLanguage
ExitLoop
EndSwitch
WEnd
#ce
Vielen Dank in der Hoffnun das ich nicht gesteinigt werde