Trackbar / sliderbar : usercontrol entièrement personnalisable (curseur, couleurs, taille, graduations, clignotement, etc)

Soyez le premier à donner votre avis sur cette source.

Vue 14 603 fois - Téléchargée 1 442 fois

Description

Alors, voici ma troisième source en C#. Cette fois si, c'est un UserControl que j'ai fait sur un coup de tête, j'avais décidé de "refaire" le TrackBar fourni avec visual studio pour plusieurs raisons: il est "difficile" de modifier la couleur, il prend beaucoup de place et je trouve qu'il est ridicule si on réduit sa hauteur, de plus la zone qui montre que le contrôle à le focus est immense et empêche de mettre contrôles trop proches. Je voulais donc en programmant cette barre, avoir le meilleur compromis hauteur/lisibilité/informations.
J'en ai profité pour ajouter d'autre fonction qui sont (pour moi) bien pratique : Affichage du pourcentage ou la valeur de la position du curseur, personnalisation (curseur, taille, couleurs), possibilité de remplir la zone entre le minimum et le curseur (pour l'affichage des composantes RVB, par exemple). J'ai aussi ajouté un petit truc tout simple qui permet d'inverser le minimum et le maximum, ce qui permet par exemple de commander directement un timer (Curseur à fond à droite => intervalle rapide ou lent en fonction d'où est le min/max)

Au niveau du code, je pense que ce n'est pas de toute beauté, tout n'est pas commenté (je pourrais en rajouter plus tard si c'est nécessaire) et c'est trop dur/pénible pour moi de relire mes commentaires pour en corriger les fautes, il reste encore quelques bugs, mais il fonctionne très bien et en fait déjà beaucoup pour mon usage.

Source / Exemple :


Voir dans le fichier zip

Conclusion :


Dans le zip un projet visual studio qui comprend le UserControl intégré dans un projet de démonstration.
Je suis ouvert à toutes remarques/critiques/encouragements/reproches/questions/analyse/... :-)

Je vous invite à visiter mon site internet ==> htpp://oximoron.free.fr <==

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
32
à noté qu'il existe 2 sources à ce sujet ainsi que 2 articles :
- http://www.dotnet-tech.com/tutoriels/propertygrid1/
- http://www.dotnet-tech.com/tutoriels/propertygrid2/

je te conseille aussi cette article si tu utilises le framework 2.0 :
- http://www.dotnet-tech.com/tutoriels/smarttags/
Messages postés
149
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
30 janvier 2009

Merci pour ton lien, ce PropertyGrid est bien pratique, cela évite une programmation et surtout un positionnement des contrôles qui devient vite pénible. De plus, cela me permet de tester, mon UserControl en effectuant des modifications en pleine exécution, cela sera bien plus pratique pour débugger.

Bon je vais doucement m'y mettre, je posterais la source modifiée et améliorée quand ce sera fait, c'est à dire dès que j'aurais le temps :)
Messages postés
341
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
10 février 2009
2
Messages postés
149
Date d'inscription
mercredi 23 juillet 2003
Statut
Membre
Dernière intervention
30 janvier 2009

>>zebobo5
Tu as raison, il est bien plus logique de dériver de Control et de mettre le code du "Load" dans le constructeur, c'est une bêtise de ma part :)

>>TheSaib
J'avais déjà vu pour les /// ça met une balise Summary et des balises mais je ne comprends pas trop ce qu'il faut mettre dedans et à quoi ca sert. Aurais-tu un petit lien qui traite ce sujet (en anglais ou en français), merci

>>t_barbillon
Pourquoi je n'utilise pas PropertyGrid, pour parametrer mon contrôle ? c'est très simple, je ne sais pas ce que c'est mais ca doit être fort pratique, je vais faire un petit tour sur google pour en apprendre un peu plus

Merci, pour vos avis, ils me permettent de m'améliorer :)
Messages postés
341
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
10 février 2009
2
Salut, juste une question, pourquoi n'utilises tu pas un PropertyGrid pour parametrer ton contrôle ?
Afficher les 7 commentaires

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.