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

AWT/Swing Java Discussion :

Déplacer un JPanel


Sujet :

AWT/Swing Java

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 60
    Points : 78
    Points
    78
    Par défaut Déplacer un JPanel
    Bonjour,

    Comme indiqué dans le titre je souhaite déplacer un JPanel dans ma fenêtre (de manière automatisée et non pas par une action utilisateur de type drag and drop).

    Ceci marche plus ou moins à ceci près qu'à la fin du traitement, le JPanel en question revient systématiquement à sa position initiale ...

    Voici le code utilisé :

    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
     
    Timer tJerry = new Timer();
            tJerry.schedule(new TimerTask() {
     
                //TODO
     
                @Override
                public void run() {
                    for(int i =1;i<50;i++)
                    {
                        jPanelJerry.setBounds(jPanelJerry.getX()+1, jPanelJerry.getY(), jPanelJerry.getWidth(),jPanelJerry.getHeight());
                        try {
                            Thread.sleep(50);
                        } catch (InterruptedException ex) {
                            Logger.getLogger(Multiplications.class.getName()).log(Level.SEVERE, null, ex);
                        }
                    }
                }
            }, 0);

    Vous l'aurez compris, le problème n'est autre que dans le replacement forcé ...

    Si vous avez une idée ou une solution, merci d'avance.

    Muska

  2. #2
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 60
    Points : 78
    Points
    78
    Par défaut
    Résolu.

    En fait il s'agit d'un problème de concurrence. il faut protéger le panel avec un mutex, soit en désactivant le bouton qui a déclenché le traitement le temps du traitement (avec setEnable), ce qui est en quelque sorte un mutex ...

  3. #3
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Du Thread.sleep dans le thread UI...

    Pas forcément très clean comme truc.

    Si tu cherches à faire des animations, je te conseillerais plutôt d'aller faire un tour du côté du timing framework par exemple.
    Tuto: www.javarichclient.com/animated-transitions-timingframeworks/
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

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

Discussions similaires

  1. faire déplacer un jpanel
    Par bourgoiscedric dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 12/04/2014, 10h40
  2. Déplacer un JPanel d'un JPanel à un autre
    Par scorbo dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 20/02/2013, 15h00
  3. déplacer Image dans un JPanel
    Par Tyver dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 09/12/2007, 22h32
  4. déplacer des JPanel
    Par hammag dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 31/03/2006, 16h16
  5. Déplacer des objets dans un JPanel
    Par hammag dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 23/03/2006, 11h13

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