[Gambas-user] How to create an array of checkbox?

vuott at tutanota.com vuott at tutanota.com
Tue Sep 26 02:09:21 CEST 2023


...now let's do an analogous example, but with checkbox array:

[code]
Private ccbb As New CheckBox[4]

Public Sub Form_Open()
  
  For b As Byte = 0 To 3
    With ccbb[b] = New CheckBox(Me) As "CheckCheck"
      .X = (b + 1) * 70
      .Y = 100
      .W = 50
      .H = 10
      .Name = "CheckBox n. " & CStr(b)
    End With
  Next
 
End

Public Sub CheckCheck_MouseDown()
 
  Print Last.Name
 
End

Public Sub Button1_Click()

  ccbb[2].Background = Color.Red

End
[/code]




26 set 2023, 02:03 da user at lists.gambas-basic.org:

>
> I did not use an array.
>
> With my code you have to identify a feature, more specifically a Property that identifies the graphic Object, whose background color you want to change.
>
> Example:
> [code]
> Private cb As CheckBox
>
> Public Sub Form_Open()
>   
>   For b As Byte = 0 To 3
>     With cb = New CheckBox(Me) As "CheckCheck"
>       .X = (b + 1) * 70
>       .Y = 100
>       .W = 50
>       .H = 10
>       .Name = "CheckBox n. " & CStr(b)
>     End With
>   Next
>  
> End
>
> Public Sub CheckCheck_MouseDown()
>  
>   Print Last.Name
>  
> End
>
> Public Sub Button1_Click()
>
>   Dim ob As Object
>
>   For Each ob In Me.Children
> ' Identify the name of the first "CheckBox" and changes its background color:
>     If ob.Name = "CheckBox n. 0" Then ob.Background = Color.Red
>   Next
>
> End
>
>
>
> 26 set 2023, 00:18 da roberto.premoli at tiscali.it:
>
>> done, but now i have another problem: how can I address the single element of array?
>>
>> for example if i want to chance some value of a precise element of array, for example background, like this:
>>
>> public sub button1_Mousedown()
>>
>>   CheckCheck[2].background = 255
>>
>> end
>>
>>
>>
>>
>> it return me the follow error "unknown identifier: CheckCheck".
>> probably i do wrong sintax but i dont know the right one
>>
>>
>>
>>
>> Il 25.09.2023 23:32 vuott--- via User ha scritto:
>>
>>
>>
>>
>>>
>>> You>>>  >>> can>>>  >>> also>>>  >>> directly>>>  >>> use>>>  >>> an>>>  >>> array>>>  >>> of>>>  ">>> CheckBox":    CheckBox[...]
>>>
>>>
>>> You can also avoid using an array, though:
>>>
>>> [code]
>>> Public Sub Form_Open()
>>>  
>>>   Dim cb As CheckBox
>>>   
>>>   For b As Byte = 0 To 3
>>>     With cb = New CheckBox(Me) As "CheckCheck"
>>>       .X = (b + 1) * 50
>>>       .Y = 100
>>>       .W = 20
>>>       .H = 10
>>>       .Name = "CheckBox n. " & CStr(b)
>>>     End With
>>>   Next
>>>  
>>> End
>>> Public Sub CheckCheck_MouseDown()
>>>  
>>>   Print Last.Name
>>>  
>>> End 
>>> [/code]
>>> 25 set 2023, 21:18 da roberto.premoli at tiscali.it:
>>>
>>>> Il 25.09.2023 20:11 T Lee Davidson ha scritto:
>>>>
>>>>> On 9/25/23 13:53, roberto.premoli at tiscali.it [1]wrote:
>>>>>
>>>>>> Hello,i using checbox, 16 checboxez, form check01 to check16. i manage
>>>>>> it individually position, value, text, etc. Now program need to be
>>>>>> expandedto 64 (maybe 128 in future) checkbox. To hndle manually is a
>>>>>> pain, with high risk to do human misake in copy/paste of code. I need
>>>>>> an array like check(index 0 to 63). I know is not possible to do in
>>>>>> IDE, but i dont know ho tto do in code. I tied to search in gambaswiki
>>>>>> without find so i came here to ask. A little example will be greatly
>>>>>> apprecated howto create an array of checkbox. thanks, Roberto
>>>>>>
>>>>> Maybe Object[] will do what you need:
>>>>> https://gambaswiki.org/wiki/comp/gb/object[] [2]
>>>>> -- Lee ----[ http://gambaswiki.org/wiki/doc/netiquette [3] ]----
>>>>>
>>>> Links:
>>>> ------
>>>> [1] mailto:roberto.premoli at tiscali.it
>>>> [2] https://gambaswiki.org/wiki/comp/gb/object[]
>>>> [3] http://gambaswiki.org/wiki/doc/netiquette
>>>> it works, craete an array of check box. but now how can i interact with that? if i draw a checbbox in code, then i have therlative action (mousedown, etc) that i can fill with my code , bit with this dinamically created objec,s where can i wrote te relative cod tu react to actions on them?
>>>> ----[ http://gambaswiki.org/wiki/doc/netiquette ]----
>>>>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gambas-basic.org/pipermail/user/attachments/20230926/2a2630b0/attachment.htm>


More information about the User mailing list