Hallo allerseits,
habe wieder mal eine blöde Frage. Ich versuche aus einer OPT Eventmode GUI eine SubGUI zu erstellen. Diese funktioniert so auch, aber sobald ich dort (in dei SubGUI) eine While Schleife mit bestimmten Ifs einfüge (hier auskommentiert) kann ich diese nicht mehr schliessen. Was felht hier, sicherlich nur ne Kleinigkeit. Für sachdienliche Hinweise wäre ich sehr dankbar. Ich hoffe nicht dass es am EventMode liegt.
AutoIt
#include-once
#include <File.au3>
#include <ButtonConstants.au3>
#include <WindowsConstants.au3>
#include <Array.au3>
#include <ComboConstants.au3>
#include <MsgBoxConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiListBox.au3>
#include <GuiComboBox.au3>
#include <StringSize.au3>
Opt("GUIOnEventMode", 1)
#NoTrayIcon
Global $SubBack = 0xFFFFFF, $Var1, $Var2
Global $btn1, $btn2
Global $hGuiSettings, $hMainGui
$hMainGui = GUICreate("Some Windowww", 600, 400)
GUICtrlSetState($hMainGui, $GUI_SHOW)
Global $mPrinter = _Form2($hMainGui)
GUISetState(@SW_SHOW, $mPrinter)
While Sleep(100)
WEnd
Func _Form2($hParent)
Local $iWidth = 430, $iHeight = 480, $iBorder = 10, $iWidthRight = 100, $iListHeight = 120, $iLineHeight = 30
Local $iWidthLeft = $iWidth-$iWidthRight-$iBorder*3
Local $mPrinterGuiData[]
;CREATE GUI
$mPrinterGuiData.Gui = GUICreate("SPC", $iWidth, $iHeight, -1, -1, -1, -1, $hParent)
GUICtrlSetState($hParent, $GUI_DISABLE)
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetOnEvent($GUI_EVENT_CLOSE, "_closePrinterGui", $mPrinterGuiData.Gui)
$idButton_Setings = GUICtrlCreateButton("Prefs1", 170, 10, 70, 20)
GUICtrlSetOnEvent( -1, "OpenGuiSettings")
GUICtrlSetTip( -1, "Settings")
EndFunc
Func OpenGuiSettings()
; GUI "GUI settings" erstellen
$hGuiSettings = GUICreate("GUI settings", 450, 260, 450, 295)
GUISetOnEvent($GUI_EVENT_CLOSE, "_GuiSettingsClose")
local $idOK = GUICtrlCreateButton("OK", 310, 370, 85, 25)
Local $aWindow_Size = WinGetPos($hGuiSettings)
Local $aWindowClientArea_Size = WinGetClientSize($hGuiSettings)
Local $Inputvar1 = GUICtrlCreateInput($var1, 170, 50, 240, 20)
Local $Inputvar2 = GUICtrlCreateInput($var2, 170, 150, 240, 20)
$btn2 = GUICtrlCreateButton ("Fertig", 290, 230, 120, 20)
; GUI "GUI settings" anzeigen
GUISetState(@SW_SHOW, $hGuiSettings)
; While 1 ; Loop until the user exits.
; Switch GUIGetMsg($hGuiSettings)
;_Bei Änderung InputFelder
; If $var1 <> GUICtrlRead($Inputvar1) Then IniWrite("spc.ini", "settings", "var1", GUICtrlRead($Inputvar1))
; If $var2 <> GUICtrlRead($Inputvar2) Then IniWrite("spc.ini", "settings", "var2", GUICtrlRead($Inputvar2))
; ExitLoop
; CASE $btn2
; _startcheck()
; GUIDelete($hGuiSettings)
; Return
; Case $GUI_EVENT_CLOSE
; GUIDelete($hGuiSettings)
; ExitLoop
; EndSwitch
; WEnd
EndFunc ;==>OpenGuiSettings
Func _closePrinterGui()
exit
EndFunc
Func _GuiSettingsClose()
GUIDelete($hGuiSettings)
EndFunc ;==>_GuiSettingsClose
Alles anzeigen
lg und schöne Restwoche noch