Tableau de checkbox

[Résolu]
Signaler
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Statut
Membre
Dernière intervention
30 octobre 2007
-
Messages postés
14826
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 octobre 2021
-
Bonjour,

je debute en VB, et je souhaite faire un tableau de checkbox pour simuler une matrice a led de 80*7^, et recuperer le code en binaire de chaque ligne

http://img149.imageshack.us/img149/3814/program2fo6.jpg

Sur l'image, c'est un quart du tableau, et sa commence déjà a faire lourd...

Et là le code que j'ai pour chaque CheckBox:

Private Sub CheckBox0_0_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox0_0.CheckedChanged 'Le premier 0est la ligne, le deuxieme la colone
        If Tab(0, 0) = 0 Then
            Tab(0, 0) = 1
        Else
            Tab(0, 0) = 0
        End If

J'aimerais bien savoir si il y a pas un moyen de gerer les CheckBox d'une autre manière ?

Merci d'avance

PS: Je suis sur VB 2005 Express

7 réponses

Messages postés
14826
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 octobre 2021
157
Bonjour

Rapidement (sans EDI) :

En attribut d'objet :
private mtChkBx(,) as CheckBox

dans l'event Load :
dim lMaxX as integer=30 'Limite Max en X (nb colonnes)

dim lMaxY as integer=8 'Limite Max en Y (nb lignes)

dim lSizeChkBx as new size(16,16) 'Taille des Checkbox

redim mtChkBx(lmaxx-1,lmaxy-1)

for X as integer=0 to lmaxx-1
    for Y as integer=0 to lmaxy-1
       mtchkbx(x,y)=new CheckBox
       mtchkbx(x,y).Size=lSize
       mtchkbx(x,y).Location=new point(x*lsize.width,y*lsize.height)
       me.controls.add(mtchkbx(x,y))
    Next
Next

Ensuite dans le reste du code tu utilises :
mtChkBx.GetUpperBound(0) pour la valeur max en X
mtChkBx.GetUpperBound(1) pour la val max en Y
mtChkBx(X,Y) pour récupérer la chkbx correspondante à la position.

Balèse la personne qui a pensé au pansement à penser (ou à panser, pensée).
VB (6, .NET1&2), C++, C#.Net1
Messages postés
14826
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 octobre 2021
157
Bonjour

Biensur, tu peux générer dynamiquement les chkbx, ensuite utilises un tableau multidimensionnel pour les mémoriser, et pour le events, addhandler.

Balèse la personne qui a pensé au pansement à penser (ou à panser, pensée).
VB (6, .NET1&2), C++, C#.Net1
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Statut
Membre
Dernière intervention
30 octobre 2007

Merci,

mais tu peux m'expliquer comment on fait pour faire sa?
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Statut
Membre
Dernière intervention
30 octobre 2007

Merci,

mais tu peux m'expliquer comment on fait pour faire sa?
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Statut
Membre
Dernière intervention
30 octobre 2007

Merci, je vais essayer sa de suite
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Statut
Membre
Dernière intervention
30 octobre 2007

merci sa marche :)

de plus le programme passe de 500ko a 40ko
Messages postés
14826
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 octobre 2021
157
Bonjour

Pense "réponse acceptée"

De rien, ça fait plaisir.

Balèse la personne qui a pensé au pansement à penser (ou à panser, pensée).
VB (6, .NET1&2), C++, C#.Net1