Bonjour,
Je suis actuellement en train de débuter dans les interfaces graphiques et j'ai un petit souci.
J'ai créé une classe Fenetre héritant de JFrame, et une classe ZoneDessin héritant de JPanel.
Dans ma classe ZoneDessin, j'ai la méthode suivante pour créer un rond rouge.
Dans mon main, j'instancie ma classe Fenetre et j'appelle ma méthode dans laquelle j'instancie ZoneDessin.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public void paintComponent(Graphics graph){ graph.setColor(Color.red); graph.fillOval(this.x, this.y, 50, 50); }
Jusque là pas de souci, j'obtiens bien mon rond rouge.
Pour la suite, je cherche à la déplacer, j'ai donc créé une boucle modifiant ses coordonnées et appelant la méthode repaint suivante :
Et c'est là que commence mon souci. Le tout fonctionne très bien (J'utilise Thread.sleep pour ralentir mon cercle), mais pour le voir effectivement bouger, je dois avec ma souris modifier en continue la taille de ma fenêtre. Si je ne touche à rien, je ne vois rien. Si je redimensionne constamment ma fenêtre, je vois bien mon cercle bouger.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public void repaint(){ ZoneDessin panneauDessin = new ZoneDessin(this.x, this.y); this.setContentPane(panneauDessin); }
J'imagine qu'en plus ça doit être quelque chose de très simple, mais cela me laisse perplexe.
Merci à ceux qui auront pris la peine de me lire, en espérant avoir été suffisamment clair
Partager