CONTRÔLE UTILISATEUR : JAUGE

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 14 sept. 2005 à 09:28
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 - 24 mars 2017 à 17:18
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/33783-controle-utilisateur-jauge

Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
24 mars 2017 à 17:18
oui et?
C'est du VB5/VB6 !!
cs_bbjodel Messages postés 2 Date d'inscription vendredi 1 octobre 2004 Statut Membre Dernière intervention 28 mai 2013
13 févr. 2009 à 23:28
Cet exemple de jauge est parfait, mais pourriez vous me donner un exemple pour un altimetre a echelle verticale ?
C'est a dire l'altitude defile verticalement, j'ai cherché sur le web, rien trouvé...

Cordialement Fred
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
15 sept. 2005 à 22:57
Le contrôle apparait de manière sympa (originale, en tous cas)

seule chose concernant ce point, elle ne tient pas compte de la barre des taches.
En effet, j'ai pris l'habitude de placer ma barre des taches sur la gauche, et ta fenetre, est donc a moitié placée sous la barre de taches.

on regrette que le Tooltip renvoies une série de chiffres non formatés, et donc difficile à lire
un indicateur du poucentage de mémoire libre serait d'un bon ton également

Bien que ta source indique "la RAM disponible", je n'ai pas vu de mention indiquant
la RAM totale de ma machine

évite de quitter tes programmes avec la commande End.
Elle ne permet pas toujours à VB de tout décharger proprement. favorive un Unload de tes Forms...

Quel interet de charger dynamiquement tes Timers, plutot que d'ajouter les contrôles sur la Form ?
mythic_kruger Messages postés 241 Date d'inscription jeudi 8 janvier 2004 Statut Membre Dernière intervention 10 novembre 2005
15 sept. 2005 à 22:18
Dissertation sur les remarques des commentaires commentés, lol.
Très juste, s'ils sont inutiles il faut les supprimer!
Mais mieux vaut les avoir et ne pas s'en servir, que d'en avoir
besoin et ne pas les avoir sous la main. Ils sont retirés par le
compilateur de toute façon et ne dérangent pas pour une utilisation nomale de l'appli.
En revanche le contrôle n'est pas un OCX réutilisable, mais un ctl inclus dans un projet ce qui permet de le modifier pour chaque projet, au cas par cas. Souple.
C'est un choix -celui des performances- que d'avoir un contrôle sans code exécuté inutilement d'ou les commentaires, plutôt que d'avoir 1 gros contrôle flexible mais très lourd avec plein d'options de partout qui servent peu. Aussi la commentatisation montre (ou)vertement aux débutants les trois étapes pour ajouter une propriété au contrôle.

L'image de fond, comme je l'ai précisé, est retravaillée ce n'est pas juste un dégradé.
Pour le dégradé je fais avec la méthode line() en trois ligne de code sans API.

Si on peut obtenir strictement le même résultat avec un ProgressBar de COMCTL.OCX, chapeau
parce que je n'ai pas réussi à obtenir plus qu'une barre horizontale, bleue et pas zolie. Avec 200 lignes de subclassing ça doit être faisable quand même.

Sinon vous avez aimé le design, l'apparition zen, la fermeture rapide par simple clic, l'absence de minbutton et maxbutton, le chargement dynmamique d'un contrôle timer?
Sale?? Faire un ctrl-alt-suppr pour comparer avec l'outil fourni par micro$oft, Onglet performances. lol.
Neo.balastik Messages postés 796 Date d'inscription jeudi 17 mai 2001 Statut Membre Dernière intervention 5 mai 2009 7
14 sept. 2005 à 15:47
Personnellement, j'aurais inclus une fonction permettant de créer son propre dégradé et non devoir utiliser le tiens...
Vois l'API GdiGradientFillRect qui ne demande pas énormément de code...
Et que sont toutes ces lignes en commentaire ? Si pas utiles, les supprimer non ?
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
14 sept. 2005 à 13:25
Pareil !
Un peu trop de code commenté pour rien. Ca fait un peu sale.

Un autre petit point :


Public Property Let Max(n As Long)
lMax = n
taux = UserControl.ScaleHeight / lMax
placer_barre lVAL
End Property

Si n vaut 0 ( après tout, pourquoi pas ...) ?
Tu avais géré çà très bien dans UserControl_Resize.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
14 sept. 2005 à 09:28
le titre de ton application est trompeuse :

il ne s'agit pas d'un controle illustrant une jauge, indiquant la RAM...

mais d'une jauge, sorte de ProgressBar.

C'est la form qui contient le code de la RAM....
Il vaudrait mieux placer le code de la RAM dans le controle, afin de coller au titre, et d'apporter un interet à ton controle : une ProgressBar standard ferait tout aussi bien l'affaire.

Deuxième point, ne laisser pas tout ce code en commentaire dans ton UserControl.
Rejoignez-nous