Progress bar couleurs differentes

Soyez le premier à donner votre avis sur cette source.

Vue 12 578 fois - Téléchargée 1 019 fois

Description

Bonjour,

Je pense que le code est certainement deja disponible je ne veux pas faire une source de plus mais j'espere que l'explication qui accompagne le code permettra a ceux qui se prennent la tete la dessus de pouvoir comprendre le fonctionnement. Le controle progress bar ne permet malheuresement pas de changer la couleur du controle il faut passer par une picture box.

Source / Exemple :


'==================================================================================
'PROCEDURE D'ALIGNEMENT POUR UNE IMAGE EN FORME DE PROGRESS BAR                   =
'==================================================================================
Public Sub PROCEDURE_MAJPROGRESSBAR(PIC_PROGRESSBAR As PictureBox, PIC_LBL_POSITION As Label, ACT_POSITION As Double, MAX_POSITION As Double, Optional PIC_COULEUR As String = &HC0C0&)
PIC_PROGRESSBAR.Cls
PIC_LBL_POSITION.Caption = ACT_POSITION & "/" & MAX_POSITION
PIC_PROGRESSBAR.ForeColor = PIC_COULEUR
PIC_PROGRESSBAR.ScaleWidth = MAX_POSITION
PIC_PROGRESSBAR.Line (-10, -10)-(ACT_POSITION, PIC_PROGRESSBAR.Height + 75), PIC_PROGRESSBAR.ForeColor, BF
PIC_PROGRESSBAR.Refresh

End Sub

'==================================================================================
'CONTROLE LST_BOX								  =
'==================================================================================
Private Sub LST_PROJECT_Click()
PROCEDURE_MAJPROGRESSBAR PIC_PROGRESS, LBL_PICPRGSPOSITION(0), LST_PROJECT.ListIndex + 1, LST_PROJECT.ListCount, &H4080&

End Sub

'==================================================================================
'DECOMPOSITION 									  =
'==================================================================================
'PROCEDURE_MAJPROGRESSBAR 	: NOM D'APPEL POUR LA PROCEDURE
'PIC_PROGRESS			: NOM DU CONTROLE PICTURE BOX
'LBL_PICPRGSPOSITION(0)		: NOM DU CONTROLE LABEL BOX POUR AFFICHER LE NUMERO ACTUEL
'LST_PROJECT.ListIndex + 1	: ENVOIE LA VALEUR DE LA POSITION DE LA LISTE BOX
'LST_PROJECT.ListCount		: ENVOIE LA VALEUR MAX DE LA LISTE BOX
'&H4080&			: CODE COULEUR DE LA BARRE DE PROGRESSION

Conclusion :


J'espère avoir été clair dans les explications. Si il manque quelque chose faite le moi savoir.

Merci d'avance pour vos remarques.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
127
Date d'inscription
lundi 11 octobre 2004
Statut
Membre
Dernière intervention
18 mai 2016

Merci de ta réponse PROTEUS91, et désolé de répondre tardivement.

En fait, je me suis fait un programme de copie entre deux répertoires (pour ne copier que ce qui est nécessaire à copier), et j'aimerais l'améliorer en ajoutant une barre de progression.

Pour l'intérêt de la couleur B, c'est très simple, et aucun rapport avec du multithreading :)

La valeur max de la barre serait le nombre d'octets à copier.

La couleur A (ex : vert) serait ce qui est déjà copié.

La couleur B (ex : rouge) serait ce qui va se copier, étant donné que la copie d'un seul fichier peut durer plusieurs secondes selon sa taille. Une fois la copie du fichier terminée la couleur B redevient A.

La couleur C (ex : blanc) serait ce qu'il reste à faire.
Messages postés
156
Date d'inscription
mardi 4 novembre 2003
Statut
Membre
Dernière intervention
28 décembre 2010

Hello pvm

Ecoute je pense que tu pourrai trouvé ton bonheure avec le code ci dessous, explication, le code couleur est donc celui de ta couleur A, et tu peux coller la picture un back color blanc qui correspondra a ton C par contre pour le B,

Mode creusage de tete (enclenché)

A moins que tu ne sois passé sur un programme qui fasse de l'hypertraitement (plusieurs tache en meme temps je ne vois pas l'interet de mettre la valeur 1 en B.

Dis moi si je me trompe.
Messages postés
127
Date d'inscription
lundi 11 octobre 2004
Statut
Membre
Dernière intervention
18 mai 2016

Désolé d'intervenir dans cette source, mais j'ai une question qui me turlupine au sujet des progress-bar.

L'une ou l'autre méthode peut-elle permettre d'avoir ceci dans une progress bar ?

- à gauche, une couleur A pour indiquer ce qui est fait
- "au milieu", une autre couleur B pour indiquer ce qui est en train d'être fait (qui passera donc à la couleur A une fois fait)
- à droite, une dernière couleur C (blanc), pour indiquer ce qu'il reste à faire.
Messages postés
156
Date d'inscription
mardi 4 novembre 2003
Statut
Membre
Dernière intervention
28 décembre 2010

Renfield Mechant garcon tu viens de me casser :) Je ne savais pas tu as un chti exemple ?
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
SendMessage & PBM_SETBARCOLOR t'auraient permis de modifier la couleur du progressbar standard
Afficher les 6 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.