IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

progressBar en builder


Sujet :

C++Builder

  1. #1
    Membre averti
    Inscrit en
    Février 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 23
    Par défaut progressBar en builder
    salut
    je veux savoir comment l'utilisation de ProgressBar en builder c++
    Merci

  2. #2
    Membre éprouvé

    Profil pro
    Cadre
    Inscrit en
    Mars 2006
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Cadre

    Informations forums :
    Inscription : Mars 2006
    Messages : 132
    Par défaut
    Une progressbar va de Min à Max
    Sa position courante est stockée dans Position (qui est un entier)

    Imaginons que tu fasse des boucles imbriquées du style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ProgressBar1.Min = 0;
    ProgressBar1.Max = 1000
    for(int i=0;i<=1000;i++)
    {
        ProgressBar1->Position++; // tu incrémentes la position de ta barre à chaque tour
    }
    Tu peux bien sur donner directement une valeur à ta progressbar

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ProgressBar1.Min = 0;
    ProgressBar1.Max = 100;
    ProgressBar1.Position = 50; // ta barre est remplie à 50%
    Si tu veux avoir le pourcentage affiché, utilise le composant CGauge contenu dans Examples (il fonctionne de la meme manière que ProgressBar à l'exception près que Position devient Progress)


  3. #3
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut
    la réponse convient peut être a iamhere. mais moi je ne suis pas trés convaincu par la réponse de tenguryu. c'est vrai que cest simple et compréhensif mais justement c'est bien ca le pb. c'est trop simple.

    le progress bar a niveau il ne fait rien , ce que j'entend pas "rien" c'est qu'on voit pas le progressbar se charger (progresser), or là a l'excution on ne voit que la barre bien rempli.

    comment faire alors pour la voir progresser.

    merci

  4. #4
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Pour la voir progresser il y a deux solution, soit faire un appel à la fonction Refresh() dans la boucle for, tel que ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ProgressBar1.Min = 0;
    ProgressBar1.Max = 1000;
    for(int i=0;i<=1000;i++)
    {
        ProgressBar1->Position++; // tu incrémentes la position de ta barre à chaque tour
        Refresh() ;
    }
    ou sinon, deuxeme solution, tu met le code dans un Timer :
    constructeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ProgressBar1.Min = 0;
    ProgressBar1.Max = 1000;
    Evenement OnTimer du composant Timer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ProgressBar1->Position++;
    Par contre, la méthode de la fonction Refresh peut provoqué un scintillement de la fenetre, ce qui peut etre désagréable pour l'utilisateur.
    Voila la réponse.
    A plus.

  5. #5
    Membre éprouvé
    Avatar de doudoustephane
    Homme Profil pro
    Gérant
    Inscrit en
    Août 2005
    Messages
    1 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 129
    Par défaut
    salut.

    pour voir avancer la progress bar au fur et à mesure, utilise un timer ou fait une pause après chaque incrémentation de la boucle.

    voilà. pour moi, ca fonctionne parfaitement

    modif ultérieure : même réponse que précédement qui a été posté pendant que j'écrivais ma réponse

  6. #6
    Membre éprouvé

    Profil pro
    Cadre
    Inscrit en
    Mars 2006
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Cadre

    Informations forums :
    Inscription : Mars 2006
    Messages : 132
    Par défaut
    Le fait de changer la propriété Position de la progressBar la redessine automatiquement...

  7. #7
    Membre expérimenté Avatar de damienlann
    Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    293
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2005
    Messages : 293
    Par défaut
    Sinon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application->ProcessMessages();
    je n'ai pas le temps d'essayer mais ca doit marché.

  8. #8
    Membre expérimenté Avatar de damienlann
    Profil pro
    Étudiant
    Inscrit en
    Mai 2005
    Messages
    293
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2005
    Messages : 293
    Par défaut
    Euh... je viens de prendre le temps de regarder. et moi je fais rien et la bar progresse normalement et toute seule en plus.
    ca dépend peut etre de la version de builder. (ceci n'est q'une supposition)

  9. #9
    Membre Expert
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Par défaut
    Il existe également les méthodes StepIt et StepBy pour faire avancer la ProgressBar (sans passer par une boucle).

  10. #10
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Bonjour
    Il y a ceci aussi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SendMessage(ProgressBar1->Handle, PBM_SETRANGE, 0, MAKELPARAM(0, 100));
    SendMessage(ProgessBar1->Handle, PBM_SETSTEP, MAKEWPARAM(1, 0), 0);
    SendMessage(ProgressBar1->Handle, PBM_STEPIT, 0, 0);
    //Debut instruction 
    SendMessage(ProgressBar1->Handle, PBM_STEPIT, 0, 0);
    //instruction suite 
    SendMessage(ProgressBar1->Handle, PBM_STEPIT, 0, 0);
    Etc..
    A++

  11. #11
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut
    super, ça marche

    mais y a t'il une une possibilité de changer la couleur du progressbar.

  12. #12
    Membre averti Avatar de hepsilonz
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 54
    Par défaut
    Réponse dans la FAQ il me semble....

  13. #13
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut
    aprés une petite visite ché Mme FAQ me revoila:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
     
    SendMessage(ProgressBar1->Handle,PBM_SETBARCOLOR,0,clLime);
    y a neilos qui sera sûrement content...

    merci

  14. #14
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut
    encore autre chose :le modèle du progressbar n'est pas trés jolie, y a til pas un moyen de le changer. au fait les rectangles ne sont pas fins du tous. je trouve ceux qu'on voit afficher sur internet plus jolie...

  15. #15
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    Tous les objets de la VCL sont des composants standards.
    En fait, ils ont été conçus pour répondre à un besoin d'ordre général, ne présentant aucune originalité et ce, de manière délibérée !
    Celà dit, on peut quand même jouer avec certains paramètres pour personnaliser l'objet mais pour certains d'entre eux... c'est limite !

    Par contre, il est possible avec BCB de créer ses propres composants.

    Je pense que l'on a plus vite fait de rédiger une class répondant de facto à ses besoins que de chercher à titiller un composant dont on sait que ce sera limite à un moment ou un autre !

    A plus !

  16. #16
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut
    tu m'apprend quelque chose, je ne savais pas qu'on pouvait nous même créer nos propres composant, je pensais qu'on était restreint aux composants déjà existant car sinon éventuellement avoir la possibilité de les importer.

    mais alors comment faire?
    merci handerson...

  17. #17
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Bonsoir
    Il y a toute 12 composant a creer pour bcb6 sur une page du site.
    Si cela peut te servir.
    A++

  18. #18
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Bonsoir
    A la page principale de Developpez.com,
    j'ai rechercher dans C & C++,
    puit (" a droite ") de la page, C++ builder etc..
    http://chgi.developpez.com/compo/
    http://c.developpez.com/cours/#bcc
    A++

  19. #19
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    Pour changer la couleur, en jaune par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     SendMessage(ProgressBar1->Handle, PBM_SETBARCOLOR, 0, clYellow);

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Choisir Visual c++ ou Borland C++Builder ?
    Par DevEric dans le forum Choisir un environnement de développement
    Réponses: 31
    Dernier message: 14/06/2007, 23h48
  2. Outils, cours et NOUVEAUX tutoriels pour Borland C++Builder
    Par hiko-seijuro dans le forum C++Builder
    Réponses: 10
    Dernier message: 12/03/2006, 22h33
  3. c++ builder JavaDoc :)
    Par JEG dans le forum C++Builder
    Réponses: 8
    Dernier message: 08/06/2002, 13h31
  4. Documentation DirectX dans C++Builder 3
    Par srvremi dans le forum DirectX
    Réponses: 1
    Dernier message: 26/04/2002, 09h59
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo