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 :

Problème d’affichage d'un Label


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 147
    Par défaut Problème d’affichage d'un Label
    Bonjour,

    Je rencontre un soucis de base pour afficher un label. Voici ce que je veux faire:
    1) j'ouvre un Form avec un bouton visible et un Label+ProgressBar visible = False
    1) Je clique sur un bouton pour lancer un calcul
    2) Le bouton est caché et le Label visible = True
    3) La boucle de calcul s'effectue....

    Mon problème:
    - Le label ne s'affiche pas avant le lancement de la boucle de calcul et n'apparait pas dans le Form !!!!

    Je mets en joint un petit programme pour montrer mon soucis.
    ESSAI.zip

    Merci de vos aides pour résoudre ce soucis.

    Cordialement.

  2. #2
    Membre expérimenté Avatar de Delaney
    Homme Profil pro
    Developpeur VB amateur
    Inscrit en
    Mars 2014
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Developpeur VB amateur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 148
    Par défaut
    Bonjour

    Utilise Me.Refresh() après avoir rendu ton label visible et avant ta boucle.

    sincèrement

  3. #3
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 323
    Par défaut
    Bonsoir,

    au sinon vous pouvez utiliser un thread dans votre Button1_Click :
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Imports System.Threading
     
    Public Class Form1
        Dim worker As Thread
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Label1.Visible = False
            ProgressBar1.Visible = False
        End Sub
     
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            worker = New Thread(AddressOf CopyFile)
            worker.Start()
        End Sub
     
        Private Sub CopyFile()
            Me.Invoke(Sub() Button1.Visible = False)
            Me.Invoke(Sub() Label1.Visible = True)
            ' Préparation Progresse Barre
            ' Minimum à 1 
            Me.Invoke(Sub() ProgressBar1.Minimum = 0)
            ' Maximum= nombre total de fichier à copier.
            'ProgressBar1 = filenames.Length
            ' On initialise la ProgressBar.
            Me.Invoke(Sub() ProgressBar1.Value = 0)
            ' On indique le pas.
            Me.Invoke(Sub() ProgressBar1.Step = 1)
            Me.Invoke(Sub() ProgressBar1.Style = ProgressBarStyle.Continuous)
            Me.Invoke(Sub() ProgressBar1.Visible = True)
            'Boucle de calcul
            For i = 1 To 1272
                ' Barre de progression
                ProgressBar1.Invoke(New Action(Sub()
                                                   ProgressBar1.PerformStep()
                                               End Sub))
                'Ici, normalement, c'est ma boucle avec
                'calculs différents remplacé par une tempo
                'La Progessbar1 s'affiche bien
                'Mais le Label1 ne s'affiche pas !!!!!!!
                '----------------------------------------
                System.Threading.Thread.Sleep(1500)
                '----------------------------------------
            Next
        End Sub
     
        Private Sub Form1_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
            worker.Abort()
        End Sub
    End Class
    cordialement,

  4. #4
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 147
    Par défaut Merci
    Re,

    Merci à tous les deux pour le coups de mains.

    J'ai essayé les deux solutions qui sont OK.

    Bravo à vous.

    Bye.


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

Discussions similaires

  1. Petit problème de centrage de label
    Par Rick62 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 05/03/2008, 13h54
  2. problème d’affichage des données depuis SQLServer 2005
    Par zakaria.chafi dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 14/12/2007, 15h06
  3. Problème de taille de label d'abscisse sur un graphique
    Par Chrysomallus dans le forum MATLAB
    Réponses: 5
    Dernier message: 25/04/2007, 13h45
  4. Problème daffichage du texte
    Par gabi944 dans le forum GTK+ avec C & C++
    Réponses: 10
    Dernier message: 22/10/2006, 19h43
  5. Problème avec JScrollPane et label
    Par gl0be dans le forum Agents de placement/Fenêtres
    Réponses: 6
    Dernier message: 26/11/2004, 17h08

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