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# Discussion :

backgroundworker et progressBar


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 86
    Par défaut backgroundworker et progressBar
    Bonjour,
    Alors mon probleme c'est que j'essaye de faire un traitement un peu long, donc j'ai decider d'utiliser un progressBar, mais le probleme c'est que mon progressBar se trouve dans une autre form que celle avec la quelle j'utilise le traitement. Donc j'essaye d'utiliser un BackGroundWorker mais j'ai toujours le meme probleme , qui est le blockage de la fenetre temporairement et je ne sais pas quoi faire.

    Merci.
    P.S.: j'incremente la valeur de mon progresse bar ou milieu d'une boucle que j'utilise pour realiser mon traitement

  2. #2
    Membre éprouvé Avatar de beren.kei
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Par défaut
    et pourquoi ne pas mettre ta progress bar dans le formulaire ou tu fais ton traitement ?

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 86
    Par défaut
    l'application actuelle ne e permet pas de mettre mon progressBar dans le meme form

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 47
    Par défaut
    j'incremente la valeur de mon progresse bar ou milieu d'une boucle que j'utilise pour realiser mon traitement
    Rassures-moi, tu fais bien ton incrémentation dans le ProgressChanged?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
            private void InitializeBgWorker()
            {
               m_bgWorker = new BackgroundWorker();
                m_bgWorker.WorkerReportsProgress = true;
                m_bgWorker.WorkerSupportsCancellation = true;
     
                m_bgWorker.DoWork += new DoWorkEventHandler(BgWorker_DoWork);
                m_bgWorker.ProgressChanged += new ProgressChangedEventHandler(BgWorker_ProgressChanged);
                m_bgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(BgWorker_RunWorkerCompleted); 
    }
     
    private void BgWorker_DoWork(object sender, DoWorkEventArgs e)
    {
    // Ici ton traitement
    // ...
    // L'appel au ReportProgress (ici 10%)
    m_bgWorker.ReportProgress(10, null);
    }
     
    private void BgWorker_ProgressChanged(object sender, ProgressChangedEventArgs e)
            {
    // Ici mise à jour de la progressbar avec e.ProgressPercentage
    }
    Essaie aussi de mettre un Thread.Sleep(1) dans ta boucle.

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 86
    Par défaut
    oui c ca je le fait dans la methode progresschange
    j'ai cree une methode a laquel je modifier la valeur du progressbar et je l'appelle depuis progresschage

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 47
    Par défaut
    Et le Thread.Sleep n'a pas d'impact (essaie de mettre un timeout plus long peut-être ?) ?

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

Discussions similaires

  1. [Débutant] Problème backgroundWorker et progressBar
    Par AlphaMoody dans le forum Windows Forms
    Réponses: 1
    Dernier message: 27/06/2012, 14h30
  2. backgroundworker avec plusieurs progressbar
    Par tortuegenie dans le forum Windows Forms
    Réponses: 1
    Dernier message: 01/06/2011, 16h54
  3. Réponses: 4
    Dernier message: 24/07/2007, 10h57
  4. ProgressBar avec plusieurs procédures
    Par elifqaoui dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 08/09/2002, 18h03
  5. Couleur de ProgressBar
    Par benj63 dans le forum C++Builder
    Réponses: 7
    Dernier message: 04/07/2002, 17h33

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