473,324 Members | 2,567 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,324 software developers and data experts.

Q: How to Work with Control Arrays?

With Deft Fingers, "Jan Driesen" <ja*********@tiscali.be> wrote:

I've an app with a bunch of Control Array of Buttons. I'll use code from my
App using 5 buttons as my example:

1) I've Dim them as a button in my Form

Dim btnUsrMonday() As Button ' User Monday Buttons
2) I've the Buttons on the Form named:
btnUsrMon1, btnUsrMon2, btnUsrMon3, btnUsrMon4, btnUsrMon5
3) I then create the Buttons Control Array in my Form

btnUsrMonday = New Button() {btnUsrMon1, btnUsrMon2, btnUsrMon3,
btnUsrMon4, btnUsrMon5}
4) Now I can control them all simply enough. Like the following will change
them all to Red with the text 'Out':

Dim i as Integer
For i = 0 To 4
btnUsrMonday(i).BackColor = Color.Red
btnUsrMonday(i).Text = "Out"
Next

What I'm looking for is a simple way to do something with ONE of them at a
time. For example, if I click on ONE of the buttons, how do I have a
sub-routine for the 'whole' array, find out which one was clicked on (ie:
btnUserMon2) and then do my colour/text change?

Obvious I can do this for each and every button. But there must be a way to
write something for the Control Array so that I can change their colour/text
when only ONE is checked (and then another, another, etc.).

I've seen a sample for Checkboxes that uses COLLECTIONS to do this... but I
can't figour out how to make it work for Buttons.

Appreciate any help.

Regards,

Bruce
Nov 19 '05 #1
3 1251
"Mr. B" <No*****@address.bot> schrieb
I've an app with a bunch of Control Array of Buttons. I'll use code
from my App using 5 buttons as my example:

1) I've Dim them as a button in my Form

Dim btnUsrMonday() As Button ' User Monday Buttons
2) I've the Buttons on the Form named:
btnUsrMon1, btnUsrMon2, btnUsrMon3, btnUsrMon4, btnUsrMon5
3) I then create the Buttons Control Array in my Form

btnUsrMonday = New Button() {btnUsrMon1, btnUsrMon2,
btnUsrMon3,
btnUsrMon4,
btnUsrMon5}
4) Now I can control them all simply enough. Like the following will
change them all to Red with the text 'Out':

Dim i as Integer
For i = 0 To 4
btnUsrMonday(i).BackColor = Color.Red
btnUsrMonday(i).Text = "Out"
Next

What I'm looking for is a simple way to do something with ONE of them
at a time. For example, if I click on ONE of the buttons, how do I
have a sub-routine for the 'whole' array, find out which one was
clicked on (ie: btnUserMon2) and then do my colour/text change?

Obvious I can do this for each and every button. But there must be a
way to write something for the Control Array so that I can change
their colour/text when only ONE is checked (and then another,
another, etc.).

I've seen a sample for Checkboxes that uses COLLECTIONS to do this...
but I can't figour out how to make it work for Buttons.

You can use the same event handler for different objects:

sub ButtonClick(...) _
Handles btnUsrMon1.click, btnUserMon2.click, ...

dim btn as button = directcast(sender, button)
btn.backcolor = ...
btn.text = ...

end sub

- OR -

dim btn as button
for each btn in btnUsrMonday
addhandler btn.click, addressof ButtonClick
next btn

In this case, you don't need the Handles keyword.
--
Armin

Nov 19 '05 #2
With Deft Fingers, "Armin Zingler" <az*******@freenet.de> wrote:
You can use the same event handler for different objects:
dim btn as button
for each btn in btnUsrMonday
addhandler btn.click, addressof ButtonClick
next btn


I'll look at this one as I actually have 19 buttons... so that's a bit more
than 5 (:

Thanks!

Bruce
Nov 19 '05 #3
With Deft Fingers, "Gary" <tu********@hotmail.com> wrote:
You could make the click events of all the buttons share the same procedure.
Then use the sender parameter
Something like this: (watch for word wrap)


Okay.... I'll even try this (in reality, I've 19 buttons... not 5). So the
code might be long. But then, it's better than doing this for 19 buttons
individually.

Thanks!

Bruce
Nov 19 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: RBohannon | last post by:
Is it possible to create a control array on an unbound form? I would like to be able to loop through a series of unbound text boxes. Thanks.
13
by: Bernie | last post by:
Sorry, but this ia another whine about VB.Net's lack of Control Arrays. I am new to VB.Net and I'm building an application that uses variable number of Label controls that are created at run...
2
by: Merlin | last post by:
Hi I have a control that allows embeddable editors, so for example I can set a property of controlsEmbeddableEditor =me.TextBox1 on my form, no problem here - what I want to do is the same thing...
3
by: B-Dog | last post by:
I'm capturing the checked radio button to XML file using the name of the radio button. I want to read my xml file to find which button was checked on close and the check the appropriate button...
3
by: Robert | last post by:
How can I declare in VB .NET an array of labels for example and afterwards using a FOR structure load every component of the array? I've used this code but it doesn't work: dim x(10) as label...
20
by: samean | last post by:
Hello, Could you explain me,In VB6 using control array,and how about VB.net. Thanks
2
by: John | last post by:
Hello everyone, I'm currently writing a program to keep track of schedule changes at a school. The goal is to have someone using the program to declare changes, then the program writes a html...
8
by: Greg | last post by:
In VB6 I made heavy use of control arrays I see they have been 'deprecated' in vb.Net, with a questionable explanation that they are no longer necessary which just addresses the event issue!...
9
by: Michael D. Ober | last post by:
In VB 6, you can create control arrays for your option groups and scan with the following code dim opt as OptionButton for each opt in OptionGroup ' Do something next opt I know VB 2005...
4
by: Arne Beruldsen | last post by:
I'm a recent convert to VB.net from VB6...and I can't believe they don't support control arrays. I have an app that uses a ton of Control Arrays...mostly labels and text boxes. I need some...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.