Réactualiser une interface JAVA

Fermé
aymoun51 Messages postés 1 Date d'inscription jeudi 10 avril 2014 Statut Membre Dernière intervention 10 avril 2014 - 10 avril 2014 à 09:40
totodunet Messages postés 1377 Date d'inscription mercredi 18 mars 2009 Statut Membre Dernière intervention 5 mars 2020 - 10 avril 2014 à 19:10
Bonjour,

Bonjour,

Dans le cadre d'un projet en informatique, j'ai besoin de réactualisr automatiquement une interface JAVA (contient des courbes) sans utiliser le bouton réfraichir.

merci d'avance
A voir également:

2 réponses

KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 020
Modifié par KX le 10/04/2014 à 19:14
Bonsoir,

Si tu sais faire le rafraîchissement avec un bouton, c'est simple.
Au lieu que le bouton appelle la méthode
refresh()
, tu vas créer une tâche qui va régulièrement appeler cette méthode.

import java.util.Timer;
import java.util.TimerTask;

public class Test
{        
    public static void refresh()
    {
        System.out.println("refresh");
    }
    
    public static void main(String[] args) throws Exception
    {
        TimerTask task = new TimerTask()
        {
            @Override
            public void run()
            {
                refresh();
            }
        };
        
        Timer timer = new Timer(true);
        timer.schedule(task, 0, 1000);
        
        for (int i=0; i<=50; i++)
        {
            System.out.println(i);
            Thread.sleep(100);
        }
    }
}

La confiance n'exclut pas le contrôle
0
totodunet Messages postés 1377 Date d'inscription mercredi 18 mars 2009 Statut Membre Dernière intervention 5 mars 2020 199
10 avril 2014 à 19:10
Bonjour,

Possibilité certainement avec le pattern Observer/Observable de Java.

Dans tes classes représentant les courbes (héritent de la classe Observable), tu notifies les changements à ta/tes classe/s contrôleur (implémente Observer) qui va ensuite faire le nécessaire pour ré afficher l'interface.

Cette explication n'est bien entendu valable que si le programme est organisé en "MVC"
0