Afficheur 7 segments (Contrôle WinForms)

Utilisateur anonyme - 5 août 2015 à 01:07
 Utilisateur anonyme - 22 août 2015 à 10:49
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/101115-afficheur-7-segments-controle-winforms

Utilisateur anonyme
22 août 2015 à 10:49
Je garde tous vos conseils en tête, et je les implémenterai... ;) Merci :D
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
17 août 2015 à 12:40
Salut

Pour chaque segment tu utilises un panel ?
pourquoi ne pas desiner dans un seul panel avec les fonctions de la class
System.Drawing.Graphics
chaque segment est représenté par un polygon en tout 7 polygons
Bonne prog
Utilisateur anonyme
16 août 2015 à 12:29
Quoique je verrai... ;)
Utilisateur anonyme
14 août 2015 à 12:52
Merci de ta réponse, mais je vais me limiter à ce que je sais faire pour l'instant. Je suis encore débutant...
Utilisateur anonyme
14 août 2015 à 12:50
Je l'ai fait sous Visual Studio 2013. Essaie peut-être d'ouvrir les .vbproj
killedman Messages postés 17 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 novembre 2017
7 août 2015 à 19:57
Salut,
Question bête ... Tu as fait sous quel version de Visual Studio ?
2010 est pas capable de l'ouvrir.
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
Modifié par NHenry le 5/08/2015 à 22:09
Bonsoir,

J'ai regardé rapidement ta source sans l'exécuter (je n'ai pas VB.NET sur cette machine).

Pour simplifier ton code, tu pourrais faire en sorte que chaque afficheur soit aussi un contrôle personnalisé (uniquement interne à ton assembly), comme ça, tu ne te limite pas à 4 afficheurs.

Ensuite pour les chiffres, il serait mieux d'utiliser un tableau ou un dictionnaire :
Le tableau, tu te limite aux chiffres, et en valeur, un tableau de bit pour dire quoi afficher, par exemple, le "0" c'est les segments 1, 2, 3, 4, 5 et 6, donc ça ferait 127 (0111111 en binaire), ensuite tu envois cela au contrôle de l'afficheur qui lui séparera les bits (avec l'opérateur AND) et affichera les segments.

Ou le dictionnaire (Dictionary(of ... ) ) avec un char en clé et une valeur binaire en valeur (comme pour le tableau), l'avantage, c'est que tu gères aussi les lettres :
"0"c = 127 (1 2 3 4 5 6)
"A"c = 247 (1 2 3 5 6 7) (fait de tête, peut être erroné)

Ton code sera plus concis car factorisé et plus simple à gérer.
Rejoignez-nous