Tableau de checkbox [Résolu]

HeLlBoY_HeLlBoY 5 Messages postés dimanche 11 décembre 2005Date d'inscription 30 octobre 2007 Dernière intervention - 30 oct. 2007 à 00:19 - Dernière réponse : NHenry 14275 Messages postés vendredi 14 mars 2003Date d'inscription 20 octobre 2018 Dernière intervention
- 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
NHenry 14275 Messages postés vendredi 14 mars 2003Date d'inscription 20 octobre 2018 Dernière intervention - 30 oct. 2007 à 14:43
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

Merci NHenry 2

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de NHenry
NHenry 14275 Messages postés vendredi 14 mars 2003Date d'inscription 20 octobre 2018 Dernière intervention - 30 oct. 2007 à 08:22
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
HeLlBoY_HeLlBoY 5 Messages postés dimanche 11 décembre 2005Date d'inscription 30 octobre 2007 Dernière intervention - 30 oct. 2007 à 14:24
0
Merci
Merci,

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

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

de plus le programme passe de 500ko a 40ko
Commenter la réponse de HeLlBoY_HeLlBoY
NHenry 14275 Messages postés vendredi 14 mars 2003Date d'inscription 20 octobre 2018 Dernière intervention - 31 oct. 2007 à 08:05
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.