Console java

tatchu Messages postés 4 Date d'inscription vendredi 31 mai 2013 Statut Membre Dernière intervention 7 septembre 2012 - 7 sept. 2012 à 13:20
tatchu Messages postés 4 Date d'inscription vendredi 31 mai 2013 Statut Membre Dernière intervention 7 septembre 2012 - 7 sept. 2012 à 14:54
Bonjour, je suis en train de développer une application java sous Netbeans , j'aime afficher une interface (console) qui m'affiche la résultat de l’exécution.
j'ai afficher le console mais le problème que la résultat n'est pas synchrone avec l’exécution c'est à dire elle ne s'affiche pas ligne par ligne , ce que j'obtiens des lignes de résultat en bloc qui s'affichent sur le console juste après l’exécution . Quelqu'un pourrait'il m'aider svp et merci

4 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
7 sept. 2012 à 14:08
Salut,

Franchement, je ne vois pas ce qui te pose problème, la console affiche ce que tu lui dis d'afficher au moment où tu le fais...
0
tatchu Messages postés 4 Date d'inscription vendredi 31 mai 2013 Statut Membre Dernière intervention 7 septembre 2012
7 sept. 2012 à 14:14
oui le console m'affiche la résultat mais après que l'application fini toute l’exécution:
par exemple s'il a fini l’exécution d'une première tache elle ne l'affiche pas instantanément sur le console elle attend que toute les taches seront exécutes et les affiche comme un bloc de texte alors que moi j'essai de l'afficher ligne par ligne
je sais pas si c'est claire maintenant , merci.
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
7 sept. 2012 à 14:20
Ha oui, le fait est que les fenêtres Swing s'exécutes dans le thread courant, il faut que tu mettes en place un autre thread pour afficher ta fenêtre :

public class Console extends Thread {

    private JFrame console;

    public Console(){
       //...
    }

    public void addLine(){
        //...
    }

    @Override
    public void run(){
        console.setVisible(true);
    }
}


Et tu affiches ta console en faisant un .start() qui exécutera le .run dans un nouveau thread.
0
tatchu Messages postés 4 Date d'inscription vendredi 31 mai 2013 Statut Membre Dernière intervention 7 septembre 2012
7 sept. 2012 à 14:54
merci beaucoup :)
0
Rejoignez-nous