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 :

Mise à jour de Form


Sujet :

VB.NET

  1. #1
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut Mise à jour de Form
    bonjour, j'ai 2 formulaires... Form1 et un Waitfor voici mon code:
    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 Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
     
            WaitforStart("Traitement en cours d'exécution", "Liste en cours de suppression...")
            ListBox1.Items.Clear()
     
            WaitforStart("Traitement en cours d'exécution", "Recherche des nouveaux fichiers...")
            count = Newfile(TextBox1.Text)
     
            WaitforStart("Traitement en cours d'exécution", "Il y a " & ListBox1.Items.Count & " fichiers à traiter")
            For i As Integer = 0 To count - 1
                WaitforStart("Traitement en cours d'exécution", "Il y a " & i & "/" & ListBox1.Items.Count & " fichiers traités")
                Extractfile(ListBox1.Items(i), i)
            Next
     
            waitfor.Close()
     
        End Sub
     
        Private Sub WaitforStart(ByVal nForm As String, ByVal nLabel As String)
            waitfor.Text = nForm
            waitfor.Label1.Text = nLabel
            waitfor.Show()
        End Sub
    tous ce passe bien sauf que le label qui est sur le waitfor reste en blanc et ne se met pas a jour pendant les modification... puis a la fin il prend bien la valeur du dernier traitement, comment puis je faire pour que la mise à jour du label se voit bien? on a l'impression que mon appli plante puis à la fin, hop elle se remet bien...

    merci

  2. #2
    Membre actif Avatar de Neiflheim
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2011
    Messages : 135
    Points : 269
    Points
    269
    Par défaut
    Tu ne redonnes pas la main à ton interface, je pense que tu devrais essayer de voir du côté du backgroundworker
    si mon message a été utile - si je suis à côté de la plaque - quand vous avez la réponse à votre question

  3. #3
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 156
    Points : 25 075
    Points
    25 075
    Par défaut
    tente application.doevents après la modification du label
    ou sinon il faut un thread/backgroundworker

    pour la petite histoire, modifier le texte d'un label fait qu'il y a une méthode de rafrahissement de l'interface qui est mis sur la pile des évènements à traiter, mais cette pile ne sera dépilée qu'à la sortie de ta sub ... donc si elle dure l'interface freeze
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    application.doevents marche nickel, merci

  5. #5
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 156
    Points : 25 075
    Points
    25 075
    Par défaut
    pour la petite histoire (bis) le doevents dit de faire une pause dans la sub, de traiter les évènements de la pile puis de continuer à la ligne d'après dans la sub
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

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

Discussions similaires

  1. Mise à jour du Form dans validate ()
    Par Cofondinde dans le forum Struts 1
    Réponses: 3
    Dernier message: 01/08/2008, 11h10
  2. Réponses: 4
    Dernier message: 11/07/2007, 16h23
  3. Réponses: 2
    Dernier message: 24/06/2007, 16h59
  4. Mise à jour affichage section détail form
    Par thb74 dans le forum Access
    Réponses: 3
    Dernier message: 27/08/2006, 13h39
  5. Réponses: 1
    Dernier message: 24/04/2006, 16h16

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