GueDevelopper
Messages postés4Date d'inscriptiondimanche 9 mars 2008StatutMembreDernière intervention 9 mars 2008
-
9 mars 2008 à 14:03
cs_cheyenne
Messages postés693Date d'inscriptionsamedi 18 mai 2002StatutMembreDernière intervention17 avril 2017
-
9 mars 2008 à 17:16
Bonjour à tous,
je suis vraiment, à l'échelle des développeurs, au plus bas niveau... Je souhaiterais donc me documenter sur certains aspects du langage Virtual Basic et pour une application que je suis en train de créer, il me vient une question à poser à propos du contrôle ListBox:
j'ai une ListBox dans laquelle j'ai inséré des éléments 'String' et je souhaiterais que lorsqu'on double-clique sur l'un de ses éléments, une variable associée à cet élément UNIQUEMENT soit incrémentée de 1. Ainsi, pour un élément plusieurs fois sélectionné, je pourrais obtenir le nombre de fois pour lequel il a été sélectionné. C'est pour une application qui comptabiliserait le nombre de voix pour des candidats (dans la ListBox) lors d'un dépouillement d'une élection.
Je voudrais donc savoir s'il y a une variable associée à chaque élément de la ListBox et si oui, si je peux l'exploiter. Dans le cas où c'est possible, pouvez-vous me montrer la syntaxe?
Merci beaucoup et bonne programmation!
"Cesse de croire et instruis-toi!"
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 9 mars 2008 à 14:14
Bonjour,
Aucune variable "associée", non...
Un évènement déclenché, par contre : OUI
Et rien n'empêche d'associer l'incrémentation d'un compteur de ton choix à la survenur d'un évènement ...(qu'il soit celui d'une listbox ou de tout autre contrôle...)
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 9 mars 2008 à 15:09
Juste mon avis personnel.
Si le nombre de candidat n'est pas trop important, il serait peut-etre plus pratique d'avoir un bouton par candidat, plutot que d'aller chercher un nom dans une listbox. Ca sera plus rapide pour l'utilisateur.
GueDevelopper
Messages postés4Date d'inscriptiondimanche 9 mars 2008StatutMembreDernière intervention 9 mars 2008 9 mars 2008 à 15:16
jmfmarques,
Le problème avec les compteurs, c'est qu'il doit y en avoir un pour chaque élément de ma ListBox, et aussi pour chacun des éléments rajoutés lors de l'utilisation de l'application (eh oui, lors d'un vote, il y a souvent des candidats inattendus =) ). Donc j'avais bien pensé à cette solution mais je ne sais pas si je peux la mettre en oeuvre dans mon cas, et donc je ne sais pas le faire dans le cas favorable...
Casy,
c'est aussi une solution qui s'offre à moi: une TextBox où se trouve le nom du candidat avec, en face, un button pour incrémenter d'une voix, mais le problème majeur qui se pose est qu'on ne sais pas le nombre exact de candidats au final(comme dit précédemment, il peut s'en rajouter), et je ne sais pas si on peut créer au fur et à mesure un ensemble de TextBox&button lors de l'exécution de l'application...
Merci de votre aide, si vous avez une solution, n'hésitez pas à m'en parler!!
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 9 mars 2008 à 15:57
Je ne vois vraiment pas ce qui t'empêcherait d'utiliser un compteur !
1) - en lieu et place d'une listbox, tu peut utiliser une ListView et te servir d'une colonne cachée comme compteur
2) - même avec une listbox, tu peux, à ton gré, y adjoindre une seconde listbox invisible et dont les index correspondent à ceux de la listbox visible pour y totaliser les votes reçus par candidat
3) - tu peux également utiliser un tableau dynamique à cet effet de compteur/candidat (toujours en faisant correspondre les index)...
Il y a en fait une foule de solutions possibles, pour peu que l'on se retrousse les manches (pas forcément trop !!!)...
Vous n’avez pas trouvé la réponse que vous recherchez ?
GueDevelopper
Messages postés4Date d'inscriptiondimanche 9 mars 2008StatutMembreDernière intervention 9 mars 2008 9 mars 2008 à 16:02
Evidemment, je pense que cela peut se faire, mais ce n'est pas parce que je ne veux pas mettre la main à la pâte, c'est plutôt que je ne connais pas encore les principales fonctions et éléments de Visual Basic, voilà pourquoi je demande de l'aide =).
Même si je n'ai pas tout saisi de ce que tu m'a proposé, je vais me renseigner dessus...
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 9 mars 2008 à 16:02
C'est le temps qui risque de manquer peut-etre, les bureaux de votes ferment dans moins de 2 heures dans les petites comunes, celle-là même ou il peut y avoir des candidat de dernière minutes.
GueDevelopper
Messages postés4Date d'inscriptiondimanche 9 mars 2008StatutMembreDernière intervention 9 mars 2008 9 mars 2008 à 16:55
Cheyenne,
mci de me proposer une solution, mais je ne connais pas certains mots et ça ne marche pas : je l'ai testé et plusieurs messages d'erreur sont affichés...Dis-toi aussi que j'ai la version VB2005, est-ce la bonne syntaxe? Moi j'en sais rien... Peut-être j'ai mal testé aussi...
- que représente List1.AddItem nom(i)
- que signifie : nom(i) = Chr$(65 + i): List1.AddItem nom(i)
??
Merci
cs_cheyenne
Messages postés693Date d'inscriptionsamedi 18 mai 2002StatutMembreDernière intervention17 avril 20172 9 mars 2008 à 17:16
Autant pour moi, j'ai zappé le VB2005 et je t'ai donné une idée pour VB6.
List1.AddItem nom(i) tu ajoutes un Item à ta liste.
nom(i) = Chr$(65 + i) tu construit ton tableau des noms, c'était pour exemple. Chr$(n) te donne un caractère dont le code ASCII est n. 65 pour A, 66 pour B, etc...
Tu aurais plus intérêt à utiliser Excel, ainsi tu aurais une trace des votes.