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

Composants Java Discussion :

Affichage JLabel dans une boucle for


Sujet :

Composants Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 26
    Points
    26
    Par défaut Affichage JLabel dans une boucle for
    Bonsoir à tous!!
    J'ai un petit probleme qui doit etre tout con mais je ne trouve pas la solution.
    J'ai une boucle for et dans cette boucle for j'ai des JLabel qui prennent des messages avec index de la boucle for(donc incrementation))(vous comprendrez mieux surement avec mon code!!), mais mon probleme c'est que mes messages ne s'affiche pas il n'y a que le dernier qui s'affiche
    Bon je vais vous expliquez avec le code ca sera plus simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    for(int index=0;index<5;index++)//1 donc on finit à 6 puis que g 5 echantillons a pesesr
        {
     
            LabelNumeroEchantillon.setText(""+index);//je veux afficher dans mon label le numero de l'echantillon
            System.out.println(""+index);//de meme mais dans la console
            informations[0]=index;//ceci c pour mon tableau
            //String poids=bufRead.toString();
            //if(poids.contains("g"))
            //{
            LabelResultatEchantillon.setText("Effectué");//je veux affiché que cette echantillon a été effectué
            System.out.println("Effectué");//de meme mais dans la console
            informations[1]=5;//ceci pour tableau
            TextResultat.setText("Echantillon"+" "+" "+"effectuée"+" : "+5);//et ceci un compte rendu
            System.out.println("Echantillon"+" "+" "+"effectuée"+" : "+5);
    Mais au lieu d'obtenir
    qd index=0 mon LabelEchantillon : "0"
    LabelResultatEchantillon : "Effectué"
    TextResultat :"Echantillon effectué 5
    qd index=1 mon LabelEchantillon : "1"
    LabelResultatEchantillon : "Effectué"
    TextResultat :"Echantillon effectué 5

    qd index=2 mon LabelEchantillon : "2"
    LabelResultatEchantillon : "Effectué"
    TextResultat :"Echantillon effectué 5

    qd index=3 mon LabelEchantillon : "3"
    LabelResultatEchantillon : "Effectué"
    TextResultat :"Echantillon effectué 5

    qd index=4 mon LabelEchantillon : "4"
    LabelResultatEchantillon : "Effectué"
    TextResultat :"Echantillon effectué 5

    et bien j'obtiens directement qd index=4

    J'ai donc essayé de mettre Thread.sleep(1000);
    alors il bloque le temps d'arriver à la fin et j'obtiens directement qd index=4!!

    Alors si quelqu'un pouvez m'aider ca serai sympa car ca fait 2 jour que j'y reflechis et je ne trouve aucune idée!!!
    Merci d'avance j'espere que j'ai été assez claire???
    Bonne soirée
    krikri150489

  2. #2
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Je n'ai pas vraiment quel était ton but, mais le résultat que tu obtiens est tout à fait normal par rapport à ce que tu fais.

    Tu modifies x fois le même label, il est donc logique qu'à la fin de ta boucle, le résultat affiché soit le dernier (qindex=4 dans ton cas).

    Si tu veux affiché plusieurs éléments, il faut avoir plusieurs labels et tu les remplis chacun avec une valeur. Ou alors, tu prends un composant texte multiligne commme le JTextArea et tu ajoutes à chaque fois une nouvelle ligne.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 26
    Points
    26
    Par défaut
    Merci pour ton aide!!!
    En fait je programme un logiciel qui permet de gérer des pesée!! J'ai donc su creer une liaison entre la balance et le PC!! et je voudrais qu'à chaque éhantillon un messsage s'affiche comme par exemple(1er echantillon,2eme echantillon etc....),je voudrais aussi afficher quand la pesée est terminée!!
    Mais je pensais que dans un seul JLabel ca pouvait fonctionner!!
    Ca va ete embétant plusieurs JLabel!!
    N'y a t il pas un autre moyen de mettre a jour le message??
    Merci d'avance!!
    Bonne soirée

  4. #4
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Je te conseille d'utiliser un JTextArea et d'utiliser la méthode append(String text) pour ajouter du texte au fur et à mesure, c'est à mon avis, la méhode la plus adaptée à ton problème.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 26
    Points
    26
    Par défaut
    Merci de ton aide en effet c'est mieux mais j'ai encore un petit probleme pourquoi mes message s'affichent d'un bloc à la fin de ma boucle au lieu ligne par ligne??
    Merci encore
    Bonne soirée

Discussions similaires

  1. [JLabel]dans une boucle for
    Par scolopendra dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 20/07/2007, 14h19
  2. Shell - Erreur dans une boucle for
    Par claralavraie dans le forum Linux
    Réponses: 4
    Dernier message: 11/01/2006, 13h45
  3. Problème avec une DLL dans une boucle For
    Par BraDim dans le forum Langage
    Réponses: 5
    Dernier message: 20/09/2005, 12h22
  4. [batch] incrémentation dans une boucle for
    Par bart64 dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 08/09/2004, 20h05
  5. Réponses: 3
    Dernier message: 06/07/2004, 10h21

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