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

VB.NET Discussion :

[VB.NET]Affichage d'une DialogBox


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Yolak
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 341
    Par défaut [VB.NET]Affichage d'une DialogBox
    Bonjour à tous,

    Je rencontre un petit souci:

    J'ai un code qui a l’exécution dure un certain temps. Pendant ce petit temps, je souhaiterais afficher un boîte de dialogue avec une phrase du style "Patientez svp" et un petit gif style sablier.

    Mon problème, c'est que lorsque que la fenêtre s'affiche, le gif reste figé pendant tout le temps du traitement... J'ai essayé de mettre une ProgressBar en mode 'Marquee" mais le même phénomène se produit...

    Voici mon code d'appel de la fenêtre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            System.Windows.Forms.Application.DoEvents()
            FEN_Wait.Show()
            FEN_Wait.Focus()
            FEN_Wait.Refresh()
    (J'essaye un peu tout !!)

    Mon code dans le Load de la fenêtre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private Sub FEN_Wait_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            System.Windows.Forms.Application.DoEvents()
            Me.Refresh()
            Me.ProgressBar1.Refresh()
        End Sub
    Une petite idée ? une piste ??

  2. #2
    Membre émérite Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 617
    Par défaut
    Salut,

    Si le traitement fige les éléments de la boîte de dialogue, tu pourrais mettre ce traitement dans un nouveau thread avec, par exemple, un BackGroundWorker

  3. #3
    Membre éclairé Avatar de Yolak
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 341
    Par défaut
    Je n'arrive pas à utiliser BackGroundWorker...
    J'ai fait ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            FEN_Wait.Show()
     
            BackgroundWorker1.RunWorkerAsync()
     
            FEN_Wait.Close()
    Dans le traitement BackGroundWorker_DoWork j'ai mis mon traitement.

    Mais ça marche pas...
    J'ai lu ça:
    http://glarde.developpez.com/dotnet/bgworker/vb/
    mais je comprend pas le fonctionnement...

  4. #4
    Membre éclairé Avatar de Yolak
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 341
    Par défaut
    Bon...
    De toute façon,ça n'a pas l'air de fonctionner...

    Je pensais que le DoEvent permettrait au gif de fonctionner mais là non...

    Je n'arrive vraiment pas à saisir pourquoi il est figé... Je ne souhaite pas forcement une solution mais plutôt une explication.

    Merci à vous... Encore!

  5. #5
    Membre émérite Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 617
    Par défaut
    Citation Envoyé par Yolak Voir le message
    Bon...
    De toute façon,ça n'a pas l'air de fonctionner...

    Je pensais que le DoEvent permettrait au gif de fonctionner mais là non...

    Je n'arrive vraiment pas à saisir pourquoi il est figé... Je ne souhaite pas forcement une solution mais plutôt une explication.

    Merci à vous... Encore!
    Le formulaire ne se rafraichit pas car le traitement est surement long, c'est pourquoi il est intéressant de mettre ce traitement dans un thread d'arrière plan séparé du thread principal.
    Concernant le BackGroundWorker, il faut mettre le traitement long dans l'évènement DoWork.......(tu as trouvé un bon lien pour pouvoir continué)

  6. #6
    Membre éclairé Avatar de Yolak
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 341
    Par défaut
    il faut mettre le traitement long dans l'évènement DoWork
    C'est bien ce que j'ai tenté de faire mais ça n'a pas l'air de fonctionner...

    Je pensais qu'il pouvait exister une solution simple! Je cherche juste à afficher un gif pendant le temps du traitement. Dois-je construire un tank pour démolir un tas d'allumettes?

    Je cherche encore...

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

Discussions similaires

  1. Affichage d'une DialogBox
    Par mulfycrowh dans le forum Visual C++
    Réponses: 0
    Dernier message: 23/10/2009, 08h34
  2. [C#][.NET] Affichage d'une valeur
    Par Sup@Lou dans le forum Windows Forms
    Réponses: 8
    Dernier message: 08/05/2006, 19h04
  3. [VB.NET] Affichage d'une image
    Par boulete dans le forum Windows Forms
    Réponses: 7
    Dernier message: 28/03/2006, 14h38
  4. [C#][.Net] Affichage d'une appli toujours au premier plan
    Par alncool dans le forum Windows Forms
    Réponses: 9
    Dernier message: 13/07/2005, 12h30
  5. Réponses: 2
    Dernier message: 29/11/2004, 12h13

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