Danke kleiner da hab ich etwas mehr durchgeblickt =)
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 553, 165, 236, 264)
; ,---Array mit 3 Inhalten 2 Spalten
; |
; |
; | Index = 3 1 Spalte Index = 3 2 Spalte
; | ,-$acheckBox[0][0] Checkbox $acheckBox[0][1] 1
; | |
; | |,$acheckBox[1][0] Checkbox1 $acheckBox[1][1] 1
; | |
; | |,$acheckBox[2][0] Checkbox $acheckBox[2][1] 1
; | |
; | |
; | |
; | |
Local $acheckBox[4][2] = [["Checkbox", 1],["Checkbox1", 1],["Checkbox2", 1],["Checkbox3", 1]]
;
; ,-Neu ArrayVariable dür die Erstellung der CheckBoxen
Local $checkErstellen[4], $x = 48;$x ist eine variable zum erstellen der Checkbox in unserm fall ist die erste GUICtrlCreateCheckbox('CheckBox',352,48,97, 17) $x = 48
; ,-- $i = Zähler Variable zweite GUICtrlCreateCheckbox('CheckBox',352,92,97, 17) $x + 24
; | Drite GUICtrlCreateCheckbox('CheckBox',352,140,97, 17)$x + 24
; |,- Wir weisen $i 0 zu das beseutet das $i ab 0 anfängt zu zählen
; |
; | ,1 ,2 ,3
; |,- In unserem Beispiel bis To 2 also bis 2 bedeutet 0 - 1 - 2
; |
; |- $i = 0 CheckBox 1 erstellen dann $i = 1 CheckBox 2 erstellen dann $i = 2 CheckBox 3 erstellen
; |
For $i = 0 To 3
; ,Ihr kommt unsere erstes Array zu einsatz für sie nahmen der einzelne Checkbox
; |
; |,$i = 0 dann hat auch $acheckBox[0][0] = "Checkbox" -> 1
; |
; |,$i = 1 dann hat auch $acheckBox[1][0] = "Checkbox1" -> 2
; |
; |,$i = 2 dann hat auch $acheckBox[2][0] = "Checkbox2" -> 3
; |
; |
; |
; |
$checkErstellen[$i] = GUICtrlCreateCheckbox($acheckBox[$i][0], 352, $x, 97, 17)
$x += 24
Next
$Button1 = GUICtrlCreateButton("Button1", 352, 120, 75, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Button2", 432, 120, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
If FileExists(@ScriptDir & '\Test.ini') Then
Local $IniAus = IniReadSection(@ScriptDir & '\Test.ini', "Test")
;
;
;, (1) Bei der *.Ini auslesung ist das verhalten gleich auser das bei den ini Array[0][0] alle einträge beinhaltet
;
;, (2) Also fangen wir von 1 und nicht von 0 an zu Zähle Beipiel Array[0][0] wird ausgelesen z.B kommt 4-4 raus also 4 schlüssel 4 werte beinhaltet die *.ini
;- in unserm fall brauchen wir den Index nicht darum Array[1][0] fangen wir an aber wir wollen ja nicht den schlüssel sondern den wert also fangen wir von
;- Array[1][1] an!
;
For $i = 1 To UBound($IniAus) - 1
;
; ,Ihr kommt man durcheinander weil beispil iniArray[1][1] erster eintrag
; | $acheckBox[1][1] zweiter eintrag
; |vergleichen wir die beiden würde wir iniArray[1][1] = 1 und $acheckBox[1][1] = 2, eigentlich soll $acheckBox[0][1] = 1 eintrag
; |sein darum $i -1 erklärung $acheckBox[$i = 1 -1 wieder 0][1]
If $IniAus[$i][1] = $acheckBox[$i - 1][1] Then GUICtrlSetState($checkErstellen[$i - 1], $GUI_CHECKED)
Next
EndIf
While 1
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
_Ini()
Exit
Case $Button1
For $i = 0 To UBound($checkErstellen) - 1;-Ihr benutzen wir [ UBound ] weil alle Prüfen werden können ohne fehler | Prüfen welche CheckBox Aktiv ist
If GUICtrlRead($checkErstellen[$i]) = $GUI_CHECKED Or GUICtrlRead($checkErstellen[$i]) = $GUI_CHECKED Or GUICtrlRead($checkErstellen[$i]) = $GUI_CHECKED Then MsgBox(0, "Welche Check Aktiv", $acheckBox[$i][0])
Next
EndSwitch
WEnd
Func _Ini();---Speichern der Aktiven CheckBox
For $i = 0 To UBound($checkErstellen) - 1
If BitAND(GUICtrlRead($checkErstellen[$i]), $GUI_CHECKED) = $GUI_CHECKED Then
$Check = 1 ;- wenn Aktiv = 1 Speichern
Else
$Check = 0
EndIf
IniWrite(@ScriptDir & '\Test.ini', "Test", $acheckBox[$i][0], $Check)
Next
EndFunc ;==>_Ini
So hab etwas probiert und konnte eine box erstellen darunter, nun meine frage wie kann ich jetz eine 2. spalte anlegen und daneben noch welche hinzufügen ?
so in etwa
[X] [X]
[X] [X]
[X] [X]
[X] [X]