mlukac89 Posted August 5, 2023 Share Posted August 5, 2023 Hi I want to make array to store checkboxes inside so i can use it later in code for easier access, and for less code. Issue is that loop is adding 1 more item in a row and there should be 5 rows and 5 columns, that's 25 in total. Also it doesn't giving me correct box number like 1 - 25, instead i have 0-6, 0-6, 0-6 On images you can see valid one and invalid one. expandcollapse popup#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### $Form1 = GUICreate("Form1", 341, 443, -1, -1) $Group1 = GUICtrlCreateGroup("", 8, 40, 323, 361, -1, $WS_EX_TRANSPARENT) $Tab1 = GUICtrlCreateTab(16, 64, 308, 329) $TabSheet1 = GUICtrlCreateTabItem("Tab1") Global $boxArray[5][25] For $line = 0 To 4 For $i = 0 To 24 $boxArray[$line][$i] = GUICtrlCreateCheckbox('Box '&$i, 20+$i*59, 94+$line*58, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) Next Next #cs $box1 = GUICtrlCreateCheckbox("Box 1", 24, 94, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box2 = GUICtrlCreateCheckbox("Box 2", 83, 94, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box3 = GUICtrlCreateCheckbox("Box 3", 141, 94, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box4 = GUICtrlCreateCheckbox("Box 4", 199, 94, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box5 = GUICtrlCreateCheckbox("Box 5", 257, 94, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box6 = GUICtrlCreateCheckbox("Box 6", 24, 152, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box7 = GUICtrlCreateCheckbox("Box 7", 83, 152, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box8 = GUICtrlCreateCheckbox("Box 8", 141, 152, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box9 = GUICtrlCreateCheckbox("Box 9", 199, 152, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box10 = GUICtrlCreateCheckbox("Box 10", 257, 152, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box11 = GUICtrlCreateCheckbox("Box 11", 24, 210, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box12 = GUICtrlCreateCheckbox("Box 12", 83, 210, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box13 = GUICtrlCreateCheckbox("Box 13", 141, 210, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box14 = GUICtrlCreateCheckbox("Box 14", 199, 210, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box15 = GUICtrlCreateCheckbox("Box 15", 257, 210, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box16 = GUICtrlCreateCheckbox("Box 16", 24, 268, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box17 = GUICtrlCreateCheckbox("Box 17", 83, 268, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box18 = GUICtrlCreateCheckbox("Box 18", 141, 268, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box19 = GUICtrlCreateCheckbox("Box 19", 199, 268, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box20 = GUICtrlCreateCheckbox("Box 20", 257, 268, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box21 = GUICtrlCreateCheckbox("Box 21", 24, 326, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box22 = GUICtrlCreateCheckbox("Box 22", 83, 326, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box23 = GUICtrlCreateCheckbox("Box 23", 141, 326, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box24 = GUICtrlCreateCheckbox("Box 24", 199, 326, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) $box25 = GUICtrlCreateCheckbox("Box 25", 257, 326, 57, 57, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) #ce GUICtrlCreateGroup("", -99, -99, 1, 1) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Link to comment Share on other sites More sharing options...
Solution Andreik Posted August 5, 2023 Solution Share Posted August 5, 2023 (edited) Is that what you need? #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### $Form1 = GUICreate("Form1", 341, 443, -1, -1) $Group1 = GUICtrlCreateGroup("", 8, 40, 323, 361, -1, $WS_EX_TRANSPARENT) $Tab1 = GUICtrlCreateTab(16, 64, 308, 329) $TabSheet1 = GUICtrlCreateTabItem("Tab1") Global $boxArray[5][5] For $line = 0 To 4 For $i = 0 To 4 $boxArray[$line][$i] = GUICtrlCreateCheckbox('Box ' & ($line + $line*4 + $i + 1), 25 + $i*60, 95+$line*60, 50, 50, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) Next Next GUICtrlCreateGroup("", -99, -99, 1, 1) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Or you can do it with a 1 dimensional array and a single loop like this: #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <TabConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### $Form1 = GUICreate("Form1", 341, 443, -1, -1) $Group1 = GUICtrlCreateGroup("", 8, 40, 323, 361, -1, $WS_EX_TRANSPARENT) $Tab1 = GUICtrlCreateTab(16, 64, 308, 329) $TabSheet1 = GUICtrlCreateTabItem("Tab1") Global $boxArray[25] For $index = 0 To 24 $boxArray[$index] = GUICtrlCreateCheckbox('Box ' & $index + 1, 25 + Mod($index, 5) * 60, 95 + Int($index/5) * 60, 50, 50, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_PUSHLIKE)) Next GUICtrlCreateGroup("", -99, -99, 1, 1) GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Edited August 5, 2023 by Andreik mlukac89 1 When the words fail... music speaks. Link to comment Share on other sites More sharing options...
mlukac89 Posted August 5, 2023 Author Share Posted August 5, 2023 Thanks man, i made mistake in second loop with 25, so simple, thanks anyway Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now