Durch diese Änderung ist ein anderes Problem aufgetreten:
Das gui lässt sich nicht auf Englisch zurüchstellen.
Wie lässt sich dieses Problem beheben?
Spoiler anzeigen
#include <GUIConstants.au3>
#Include <Misc.au3>
Opt("GUIOnEventMode", 1)
Global $arControl[21], $Switch = 0
Global $INIPath = @ScriptDir & '\sys\Language1.ini'
Global $arTitleEN = IniReadSection($INIPath, 'EN')
Global $arTitleDE = IniReadSection($INIPath, 'DE')
Global $DisWidth = @DesktopWidth
Global $DisHeight = @DesktopHeight
$i=0
If StringInStr("0407,0807,0c07,1007,1407", @OSLang) Then
$OSLanguage="German"
Else
$OSLanguage="English"
EndIf
$arControl[0] = GUICreate ("English",270,300,$DisWidth-270,$DisHeight-300,$WS_POPUP, $WS_EX_TOPMOST)
$BHide = GUICtrlCreateButton("Hide (Home)", 40, 265, 75, 25, 0) Or _IsPressed (24)
GUICtrlSetOnEvent(-1, "Hide")
$Exit = GUICtrlCreateButton("Exit (End)", 140, 265, 75, 25, 0) Or _IsPressed (23)
GUICtrlSetOnEvent(-1, "Exit2")
$BInput = GUICtrlCreateButton("Save", 130, 50)
GUISetState()
$Input = GUICtrlCreateInput ("Name", 30, 50,60,20)
GUICtrlSetOnEvent(-1, "Save")
$Section = IniReadSection ("Data.ini",$Input)
$data = "key1=val1" & @LF & "key2=val2" & @LF & "key3=val3"
$arControl[1] = GUICtrlCreateMenu("File")
GUICtrlSetOnEvent(-1, "menuFileClick")
$arControl[2] = GUICtrlCreateMenu ("Load settings",$arControl[1])
$arControl[3] = GUICtrlCreateMenuItem ("Reset",$arControl[1])
$arControl[4] = GUICtrlCreateMenuItem ("Exit",$arControl[1])
GUICtrlSetOnEvent(-1, "menuExitClick")
$arControl[5] = GUICtrlCreateMenu ("Functions")
GUICtrlSetOnEvent(-1, "menuFuncClick")
$arControl[6] = GUICtrlCreateMenuItem ("Ba",$arControl[5])
$arControl[7] = GUICtrlCreateMenuItem ("Hea",$arControl[5])
$arControl[8] = GUICtrlCreateMenuItem ("StoHea",$arControl[5])
$arControl[9] = GUICtrlCreateMenuItem ("Sle",$arControl[5])
$arControl[10] = GUICtrlCreateMenuItem ("Ka",$arControl[5])
$arControl[11] = GUICtrlCreateMenuItem ("Ex",$arControl[5])
$arControl[12] = GUICtrlCreateMenu("Display")
GUICtrlSetOnEvent(-1, "menuDisClick")
$arControl[13] = GUICtrlCreateMenu ("Default", $arControl[12])
$arControl[14] = GUICtrlCreateMenu ("Other", $arControl[12])
If $DisWidth & " x " & $DisHeight <> "800 x 600" Then
GUICtrlCreateMenuItem ("800 x 600", $arControl[14])
Else
GUICtrlCreateMenuItem ("800 x 600", $arControl[13])
EndIf
If $DisWidth & " x " & $DisHeight <> "1280 x 1024" Then
GUICtrlCreateMenuItem ("1280 x 1024", $arControl[14])
Else
GUICtrlCreateMenuItem ("1280 x 1024", $arControl[13])
EndIf
$arControl[15] = GUICtrlCreateMenu ("Language")
$arControl[16] = GUICtrlCreateMenu ("Default", $arControl[15])
GUICtrlCreateMenuItem ($OSLanguage, $arControl[16] )
GUICtrlSetOnEvent(-1, "menuLangClick")
$arControl[17] = GUICtrlCreateMenuItem ("German", $arControl[15])
GUICtrlSetOnEvent(-1, "menuLangClick")
$arControl[18] = GUICtrlCreateMenuItem ("English", $arControl[15])
GUICtrlSetOnEvent(-1, "menuLangClick")
$arControl[19] = GUICtrlCreateMenu("?")
$arControl[20] = GUICtrlCreateMenuItem ("About", $arControl[19])
GUICtrlSetOnEvent(-1, "menuAboutClick")
GUISetState(@SW_SHOW)
While 1
Sleep(100)
WEnd
Func menuLangClick()
Switch $Switch
Case 0
$arTitle = IniReadSection($INIPath, 'DE')
$Switch = 0
Case 1
$arTitle = IniReadSection($INIPath, 'EN')
$Switch = 1
EndSwitch
SetTitle($arTitle)
$arTitle = 1
EndFunc
Func SetTitle(ByRef $ARRAYTITLE)
For $i = 0 To UBound($arControl) -1
If $i = 0 Then
WinSetTitle($arControl[0], '', $ARRAYTITLE[1][1])
Else
GUICtrlSetData($arControl[$i], $ARRAYTITLE[$i+1][1])
EndIf
Next
EndFunc
Func menuFileClick()
EndFunc
Func menuFuncClick()
EndFunc
Func menuDisClick()
EndFunc
Func menuAboutClick()
EndFunc
Func menuExitClick()
Exit
EndFunc
Func Exit2()
Exit
EndFunc
Func Hide()
GUISetState(@SW_HIDE)
Sleep (250)
While $i = 0
If _IsPressed (24) Then
GUISetState(@SW_SHOW)
Sleep (100)
$i = +1
EndIf
WEnd
$i = 0
EndFunc
Func Save()
IniWriteSection (@ScriptDir & "\sys\Data.ini",GUICtrlRead($Input), $data)
EndFunc