hallo,
hab ein weiteres problem mit meinem script:
[autoit]
#Include <WindowsConstants.au3>
#Include <GuiConstantsEx.au3>
#Include <File.au3>
#Include <EditConstants.au3>
#NoTrayIcon
Opt("TrayMenuMode", 1)
Opt("GUIResizeMode", 0)
If Not FileExists(@ScriptDir & "\data.ini") Then
_FileCreate(@ScriptDir & "\data.ini")
$sectionSystem="AnzahlNotizen=0" & @LF & "AnzahlErinnerungen=0" & @LF & "DesktopWidth=" & @DesktopWidth & @LF & "DesktopHeight=" & @DesktopHeight
IniWriteSection("data.ini", "SYSTEM", $sectionSystem)
Else
__rebuildNotes()
EndIf
$new=TrayCreateMenu("Neu")
$newNote=TrayCreateItem("Notiz", $new)
$newReminder=TrayCreateItem("Erinnerung", $new)
TrayCreateItem("")
$deleteAllItems=TrayCreateItem("Alle Einträge löschen")
TrayCreateItem("")
$exitTray=TrayCreateItem("Beenden")
TraySetState()
While True
__checkDesktopSize(@DesktopWidth, @DesktopHeight)
$msgT=TrayGetMsg()
Select
Case $msgT=0
ContinueLoop
Case $msgT=$exitTray
If IniRead(@ScriptDir & "\data.ini", "SYSTEM", "AnzahlNotizen", "")>0 Then
For $i=0 To IniRead(@ScriptDir & "\data.ini", "SYSTEM", "AnzahlNotizen", "")-1
$textBeforeReplace=ControlGetText("Notiz " & $i, "", "Edit1")
$text=StringReplace($textBeforeReplace, @CRLF, Chr(160))
$pos=WinGetPos("Notiz " & $i)
$sectionGUI="PosX=" & $pos[0] & @LF & "PosY=" & $pos[1] & @LF & "Width=" & $pos[2] & @LF & "Heigth=" & $pos[3] & @LF & "Text=" & $text
IniWriteSection(@ScriptDir & "\data.ini", $i, $sectionGUI)
Next
EndIf
ExitLoop
Case $msgT=$newNote
__createNewNote()
EndSelect
$msgG=GUIGetMsg()
Select
Case $msgG=$GUI_EVENT_CLOSE
MsgBox(0,"","Test")
EndSelect
WEnd
Exit
Func __createNewNote()
GUICreate("Notiz " & IniRead(@ScriptDir & "\data.ini", "SYSTEM", "AnzahlNotizen", ""), 200, 200, -1, -1, $WS_SIZEBOX, $WS_EX_TOOLWINDOW)
GUICtrlCreateEdit("", 0, 0, 198, 198, BitOR($ES_MULTILINE, $ES_WANTRETURN))
GUISetState()
IniWrite(@ScriptDir & "\data.ini", "SYSTEM", "AnzahlNotizen", IniRead(@ScriptDir & "\data.ini", "SYSTEM", "AnzahlNotizen", "")+1)
EndFunc
Func __rebuildNotes()
For $i=0 To IniRead(@ScriptDir & "\data.ini", "SYSTEM", "AnzahlNotizen", "")-1
GUICreate("Notiz " & $i, IniRead(@ScriptDir & "\data.ini", $i, "Width", ""), IniRead(@ScriptDir & "\data.ini", $i, "Heigth", ""), IniRead(@ScriptDir & "\data.ini", $i, "PosX", ""), IniRead(@ScriptDir & "\data.ini", $i, "PosY", ""), $WS_SIZEBOX, $WS_EX_TOOLWINDOW)
GUICtrlCreateEdit(StringReplace(IniRead(@ScriptDir & "\data.ini", $i, "Text", ""), Chr(160), @CRLF), 0, 0, IniRead(@ScriptDir & "\data.ini", $i, "Width", "")-2, IniRead(@ScriptDir & "\data.ini", $i, "Heigth", "")-2, BitOR($ES_MULTILINE, $ES_WANTRETURN))
GUISetState()
Next
EndFunc
Func __checkDesktopSize($dWidth, $dHeight)
If $dWidth<>IniRead(@ScriptDir & "\data.ini", "SYSTEM", "DesktopWidth", "") Or $dHeight<>IniRead(@ScriptDir & "\data.ini", "SYSTEM", "DesktopHeight", "") Then
; Fenster an neue Desktopgröße anpassen
EndIf
EndFunc
die messagebox wird nicht angezeigt, wenn ich eines der erstellten guis per klick auf das X schließen will (zeile 46)
was mach ich falsch???