Vb6 + progress bar [Résolu]

cs_jimmy69 787 Messages postés dimanche 22 décembre 2002Date d'inscription 27 novembre 2008 Dernière intervention - 4 oct. 2007 à 10:03 - Dernière réponse : cs_jimmy69 787 Messages postés dimanche 22 décembre 2002Date d'inscription 27 novembre 2008 Dernière intervention
- 5 oct. 2007 à 09:33
Bonjour,

J'ai une application vb6 et j'aimerais y ajouter une progress bar qui ne fasse que des aller et retour !
J'ai regarde dans la boite a outils malheureusement ce controle n'a pas l'air d'exister sous vb6 !

Est ce possible de faire une progress bar sous vb6 !?

Merci
Christophe
Afficher la suite 

12 réponses

Répondre au sujet
jrivet 7401 Messages postés mercredi 23 avril 2003Date d'inscription 6 avril 2012 Dernière intervention - 4 oct. 2007 à 10:13
+3
Utile
Salut,
Ajoute à ton projet le composant
Microsoft Windows Common Controls 6.0 (SP6)
Tu pourras alores utiliser le controle ProgressBar à inserer dans une feuille

Si tu l'insere dans une feuille avec un contrôle Timer essaie ce code et vois si répond à ta question

Option Explicit

Private Inc As Boolean

Private Sub Form_Load()
   Inc = True
   ProgressBar1.Min = 0
   ProgressBar1.Max = 100
   Timer1.Interval = 1
   ProgressBar1.Scrolling = ccScrollingSmooth
End Sub<hr />
Private Sub Timer1_Timer()
 
   If Inc Then
       ProgressBar1.Value = ProgressBar1.Value + 1
   Else
       ProgressBar1.Value = ProgressBar1.Value - 1
   End If   If ProgressBar1.Value ProgressBar1.Max Then Inc False   If ProgressBar1.Value ProgressBar1.Min Then Inc True
End Sub<hr />, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jrivet
GEDDi 209 Messages postés lundi 22 novembre 1999Date d'inscription 3 juillet 2008 Dernière intervention - 4 oct. 2007 à 12:16
+3
Utile
Hello,

Sans controle de type ActiveX (Microsoft Windows Common Controls 6.0 ) tu peux tres bien mettre un Label avec une culeur de fond genre bleue qui dans ton Timer change de property sur son 'width', ce qui provoque une simulation de PBar :)

Gerome

http://www.fbsl.net-------------------------------------
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de GEDDi
Adn56 1220 Messages postés jeudi 24 mai 2007Date d'inscription 28 septembre 2013 Dernière intervention - 4 oct. 2007 à 15:07
+3
Utile
salut, le timer.enabled est à true ?
et la couleur ?
bref pour ton soucis d'ocx, tu peux le copier de ton rep win/sys32, puis tu le place dans ta distrib de ton soft avec un fichier bat qui le copie dans c:/win/sys32 puis qui lance un regserver32 de l'ocx.
++

Tiens les balises ne sont pas reconnues ^_____^, zut alors.....
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Adn56
cs_jimmy69 787 Messages postés dimanche 22 décembre 2002Date d'inscription 27 novembre 2008 Dernière intervention - 4 oct. 2007 à 10:37
0
Utile
salut jrivet,

il m'a fallu plus de temps pour trouver le windows common control que pour tester ton code !
genial ca tourne impeccable

je te remercie vraiment !

justeu ne petite chose !
est il possible dans la progress bar d'eviter qu'elle revienne en arriere !?

oui la progress bar va de l'avant et arriere !
je veux qu'elle aille au bout et recommence au debut ?!

Merci pour tout en tout cas
Christophe
Commenter la réponse de cs_jimmy69
jrivet 7401 Messages postés mercredi 23 avril 2003Date d'inscription 6 avril 2012 Dernière intervention - 4 oct. 2007 à 10:48
0
Utile
Salut,
Oui c'est possible en modifiant le code commme suit. Mais ut aurais pu le trouver seul

Option Explicit

Private Sub Form_Load()
   ProgressBar1.Min = 0
   ProgressBar1.Max = 100
   Timer1.Interval = 1
   ProgressBar1.Scrolling = ccScrollingSmooth
End Sub<hr />
Private Sub Timer1_Timer()
 
   ProgressBar1.Value = ProgressBar1.Value + 1    If ProgressBar1.Value ProgressBar1.Max Then ProgressBar1.Value ProgressBar1.Min
  
End Sub

@+: Ju£i?n
Pensez: Réponse acceptée
Commenter la réponse de jrivet
cs_jimmy69 787 Messages postés dimanche 22 décembre 2002Date d'inscription 27 novembre 2008 Dernière intervention - 4 oct. 2007 à 12:35
0
Utile
salut les gars,

ok ca marche !

y'a juste un truc qui me tracasse !
quand je mets l'exe sur une autre machine et que je le lance il me dit :

MSCOMCTL.OCX is missing !!
ma machine ou j'ai essaye est un windows 2003 standart !

Vous avez une idée ..je pense que cela vient du fait que j'ai ajoute cette librairie pour travailler avec la progress bar et que je dois place cette ocx sur la machine de production ?!

juste ou pas !?

Merci
Christophe
Commenter la réponse de cs_jimmy69
lolokun 1241 Messages postés mardi 10 octobre 2006Date d'inscription 27 août 2013 Dernière intervention - 4 oct. 2007 à 13:04
0
Utile
Bonjour,

Pour faire tourner ton appli sur une autre machine il faut créer un empaquêtage comprenant les dépendances de ton programme.
Fais une petite recherche sur le site avec INNO SETUP + ISTOOL et tu trouveras ton bonheur
Commenter la réponse de lolokun
GEDDi 209 Messages postés lundi 22 novembre 1999Date d'inscription 3 juillet 2008 Dernière intervention - 4 oct. 2007 à 13:47
0
Utile
Bonjour,

Essayes aussi ma version sans controle de type ActiveX ( cf. au dessus )

Gerome
http://www.fbsl.net-------------------------------------
Commenter la réponse de GEDDi
cs_jimmy69 787 Messages postés dimanche 22 décembre 2002Date d'inscription 27 novembre 2008 Dernière intervention - 4 oct. 2007 à 14:38
0
Utile
Re,

sorry mais le vb je connais pas de trop voila ce que j'ai fat mais rien n'avance !je vois la barre mais pas de progression ! j'ai bien un timer pourtant !

rivate BoolProgrBar As Boolean


Private Sub Form_Load()


BoolProgrBar = True
Label1.Width = 0


End Sub




Private Sub Timer1_Timer()
 
   If BoolProgrBar Then
     
       Label1.Width = Label1.Width + 1
   Else
     
      Label1.Width = Label1.Width - 1
   End If
   
   
   If Label1.Width = 100 Then
        BoolProgrBar = False
        'ProgressBar.Value = 0
        Label1.Width = 0
   End If
   

   If Label1.Width = 0 Then
   BoolProgrBar = True
   End If
  
End Sub

Merci
Christophe
Commenter la réponse de cs_jimmy69
cs_jimmy69 787 Messages postés dimanche 22 décembre 2002Date d'inscription 27 novembre 2008 Dernière intervention - 4 oct. 2007 à 20:23
0
Utile
salut salut,

Merci a tous pour votre aide, vos codes, etc..

J'ai teste les deux manieres => progress bar
et le label ..

Mais j'opte pour le label afin de ne pas devoir faire de regsvr32 avant d'utiliser l'application !

Merci
Christophe
Commenter la réponse de cs_jimmy69
GEDDi 209 Messages postés lundi 22 novembre 1999Date d'inscription 3 juillet 2008 Dernière intervention - 4 oct. 2007 à 21:31
0
Utile
Bonjour,

Tu as choisis une voie simple et qui fonctionnera de maniere plus légère :)
Autre 'truc' : à la place du label, tu prends par exemple un GIF dégradé, que tu 'allonges' comme le Label :)

@+
Gerome (auteur du langage FBSL )
http://www.fbsl.net-------------------------------------
Commenter la réponse de GEDDi
cs_jimmy69 787 Messages postés dimanche 22 décembre 2002Date d'inscription 27 novembre 2008 Dernière intervention - 5 oct. 2007 à 09:33
0
Utile
salut Geddi,

Oui je pense aussi !

En fait j'ai mis un label en transparent et fixed single afin de lui donner un peu de relief !

j'ai fait un carre bleu avec un label et puis un peu de code

Private Sub Timer1_Timer()
 
    If LabelCarre.Left >= LabelFont.Left + LabelFont.Width Then
           
        LabelCarre.Left = LabelFont.Left - LabelCarre.Width
           
    End If


    LabelCarre.Left = LabelCarre.Left + 50

Bon c'est pas super super mais ca tourne et ca fait un peu joli quitte de devoir installer l'ocx en question !

Merci pour toute votre aide !
Christophe
Commenter la réponse de cs_jimmy69

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.