Graphics - Ajouter des figures sans effacer les précedentes
Résolu/Fermé
sansordi
Messages postés
80
Date d'inscription
lundi 19 novembre 2007
Statut
Membre
Dernière intervention
23 janvier 2018
-
Modifié le 23 janv. 2018 à 13:35
sansordi Messages postés 80 Date d'inscription lundi 19 novembre 2007 Statut Membre Dernière intervention 23 janvier 2018 - 23 janv. 2018 à 14:22
sansordi Messages postés 80 Date d'inscription lundi 19 novembre 2007 Statut Membre Dernière intervention 23 janvier 2018 - 23 janv. 2018 à 14:22
A voir également:
- Graphics - Ajouter des figures sans effacer les précedentes
- Effacer les cookies - Guide
- Effacer les données de navigation - Guide
- Comment effacer une page sur word - Guide
- Ajouter un compte gmail - Guide
- Ajouter signature word - Guide
1 réponse
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
3 019
23 janv. 2018 à 13:45
23 janv. 2018 à 13:45
Bonjour,
C'est normal qu'il redessine puisque tu fait un
Même si tu pourrais demander à ne redessiner qu'une partie de la fenêtre avec
Le vrai problème c'est que tu ne stockes pas les valeurs qu'il faudrait redessiner, X et Y c'est bien pour un seul point, mais si tu veux tout l'historique il faut les conserver.
Exemple :
Remarque : "je travail sous netbeans, une partie du code est auto-généré"
C'est une mauvaise idée pour apprendre à programmer, parce que du coup tu ne peux pas comprendre ce qu'il se cache derrière...
C'est normal qu'il redessine puisque tu fait un
repaint();(c'est un peu le but de la méthode...)
Même si tu pourrais demander à ne redessiner qu'une partie de la fenêtre avec
repaint(0, x, y, width, height);
Le vrai problème c'est que tu ne stockes pas les valeurs qu'il faudrait redessiner, X et Y c'est bien pour un seul point, mais si tu veux tout l'historique il faut les conserver.
Exemple :
import java.awt.Point; import java.util.List; import java.util.ArrayList;
private final List<Point> points = new ArrayList<>();
for (Point point : points) g.fillOval(point.x, point.y, 5, 5);
points.add(new Point(evt.getX(), evt.getY());
Remarque : "je travail sous netbeans, une partie du code est auto-généré"
C'est une mauvaise idée pour apprendre à programmer, parce que du coup tu ne peux pas comprendre ce qu'il se cache derrière...
23 janv. 2018 à 14:22
En effet, passer par une ArrayList simplifie les choses et permet le stockage des données, je n'y pense pas encore suffisamment... et pourtant !
(Redessiner une partie de la fenêtre n'est pas approprié pour ce projet, enfin me semble-t-il, dù au risque de superposition.)
Pour Netbeans, je sais bien que ce n'est pas le top, mais comme j'avais beaucoup d'éléments graphiques à positionner sans avoir une seule idée du rendu final, cela m'a permis de faire la maquette de mon projet tout apprenant à coder le reste. Aujourd'hui je suis sur la fin de mon projet grâce à Netbeans. Sans lui, je serai encore en train de me demander à quoi aller ressembler mon appli... Donc oui, je suis encore plus que débutant en BorderLayout et compagnie, mais mon projet est en train de voir le jour ;).
Pour être parti de 0 (je ne savais même pas écrire le fameux "Hello World"...), aujourd'hui j'ai une app qui fait de la gestion de client.