Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

PROGRESSBAR


Information sur la source

Description

Cliquez pour voir la capture en taille normale
Ce petit code montre comment une ProgressBar, sous forme de 2 PictureBox, permet le comptage d'un timers en pourcentage.
C'est utile, par exemple, pour faire patienter l'utilisateur durant le chargement du logiciel.
Il a été utilisé à la création de mon logiciel PHONE99.

 

Source

  • Pour le code, tout est dans le zip.
Pour le code, tout est dans le zip.

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de PROGRAMMIX le 28/02/2004 08:40:41

Il en existe déjà quelques unes sur le site...

Personnellement, je préfère limiter la progressbar à un seul picturebox dans lequel se trouve à la fois la ligne de progression et le texte indiquant le pourcentage.

La procédure que j'utilise habituellement (voir ci-dessous), offre ainsi l'avantage de limiter les contrôles à utiliser.  Elle permet également de modifier les couleurs de la ligne de progression ainsi que celle du pourcentage lorsque la ligne passe dessus.


Public Sub Progression(ByVal Valeur As Integer, ByVal Max As Integer)
    
    Dim iVal As Integer
    Dim sPourcentage As String
    
    'Récupère la valeur de la progression
    iVal = Valeur
    'Si 0...
    If iVal = 0 Then iVal = 1
    'Transforme cette valeur en pourcentage
    iVal = (iVal / Max) * 100
    'Transforme cette valeur en chaîne
    sPourcentage = Format(iVal, "###") & "%"
    
    'Efface le contenu de la PictureBox
    Me.Picture1.Cls
    
    'Calcule l'emplacement de la chaîne (au centre de la PictureBox)
    Me.Picture1.CurrentX = (Me.Picture1.ScaleWidth - Me.Picture1.TextWidth(sPourcentage)) / 2
    Me.Picture1.CurrentY = (Me.Picture1.ScaleHeight - Me.Picture1.TextHeight(sPourcentage)) / 2
    
    'Ecrit la chaîne
    Me.Picture1.Print sPourcentage
    'Trace une ligne pour indiquer la progression
    Me.Picture1.Line (0, 0)-(iVal, Me.Picture1.ScaleHeight), vbMagenta, BF
    'Redessine le tout
    Me.Picture1.Refresh
    'Rend la main au système
    DoEvents
    
End Sub

Remarque, il faut définir absolument définir les propriétés suivantes de la picturebox pour que cela marche
    
    Me.Picture1.AutoRedraw = True
    Me.Picture1.ScaleWidth = 100
    Me.Picture1.DrawMode = vbNotXorPen

signaler à un administrateur
Commentaire de jack le 28/02/2004 12:12:46 administrateur CS

Oui, tu as aussi cette source ( http://www.vbfrance.com/code.aspx?ID=17200 ) qui est un ocx qui reprend le concept de Programmix et qui optionnellement permet d'ajouter un texte devant le poucentage.

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,250 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.