Tableau de checkbox [Résolu]

Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
30 octobre 2007
- - Dernière réponse : NHenry
Messages postés
14356
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
14 janvier 2019
- 31 oct. 2007 à 08:05
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
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
14356
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
14 janvier 2019
364
2
Merci
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

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 120 internautes nous ont dit merci ce mois-ci

Commenter la réponse de NHenry
Messages postés
14356
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
14 janvier 2019
364
0
Merci
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
Commenter la réponse de NHenry
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
30 octobre 2007
0
Merci
Merci,

mais tu peux m'expliquer comment on fait pour faire sa?
Commenter la réponse de HeLlBoY_HeLlBoY
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
30 octobre 2007
0
Merci
Merci,

mais tu peux m'expliquer comment on fait pour faire sa?
Commenter la réponse de HeLlBoY_HeLlBoY
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
30 octobre 2007
0
Merci
Merci, je vais essayer sa de suite
Commenter la réponse de HeLlBoY_HeLlBoY
Messages postés
5
Date d'inscription
dimanche 11 décembre 2005
Dernière intervention
30 octobre 2007
0
Merci
merci sa marche :)

de plus le programme passe de 500ko a 40ko
Commenter la réponse de HeLlBoY_HeLlBoY
Messages postés
14356
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
14 janvier 2019
364
0
Merci
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
Commenter la réponse de NHenry

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.