A voir également:
- Dessiner plusieurs graphes dans une interface
- Dessiner un tableau - Guide
- Common interface 5v only - Forum TNT / Satellite / Réception
- Interface netflix - Accueil - Streaming
- Interface gmail - Guide
- Akamai netsession interface ✓ - Forum Réseaux sociaux
4 réponses
Dans le détail, il faudrait avoir plus de précisions sur ce que tu as fait, mais tu peux partager l'objet Graphics de ta JFrame lors de la création de tes Threads, chacun allant dessiner ce qu'il veut en même temps.
Je viens de faire des "fourmis" qui se promènent sur l'écran, chacune dessinant son chemin parcouru d'une couleur personnelle. C'est bidon, mais ça t'aidera peut-être.
Je viens de faire des "fourmis" qui se promènent sur l'écran, chacune dessinant son chemin parcouru d'une couleur personnelle. C'est bidon, mais ça t'aidera peut-être.
import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; import java.awt.Point; import java.util.Random; import javax.swing.JFrame; public class Fourmi extends Thread { private final Graphics gph; private final Dimension dim; private final Color clr; private Point pos; private static final Random random = new Random(); public Fourmi(JFrame frame, Color color) { dim = frame.getSize(); gph = frame.getGraphics(); clr = color; pos = new Point(random.nextInt(dim.width), random.nextInt(dim.height)); } @Override public void run() { while (true) { Point next; switch (random.nextInt(4)) { case 0: // à gauche if (pos.x==0) pos.x=dim.width; next = new Point(pos.x-1,pos.y); break; case 1: // à droite if (pos.x==dim.width) pos.x=0; next = new Point(pos.x+1,pos.y); break; case 2: // en bas if (pos.y==0) pos.y=dim.height; next = new Point(pos.x,pos.y-1); break; case 3: // en haut if (pos.y==dim.height) pos.y=0; next = new Point(pos.x,pos.y+1); break; default: next=pos; } synchronized (gph) { gph.setColor(clr); gph.drawLine(pos.x,pos.y, next.x, next.y); } pos = next; } } public static void main(String[] args) { JFrame frame = new JFrame(); frame.setExtendedState(JFrame.MAXIMIZED_BOTH); frame.setVisible(true); frame.setResizable(false); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); new Fourmi(frame,Color.RED).start(); new Fourmi(frame,Color.GREEN).start(); new Fourmi(frame,Color.BLUE).start(); new Fourmi(frame,Color.BLACK).start(); } }
Même si tu ne le fais pas explicitement, la méthode paint sera de toute façon appelée implicitement par les méthodes de plus haut niveau que tu pourrais utiliser !
Pour t'aider à combiner plusieurs de tes graphes il faudrait savoir quels types de graphes tu veux représenter, et comment tu les représentes seuls.
Pour t'aider à combiner plusieurs de tes graphes il faudrait savoir quels types de graphes tu veux représenter, et comment tu les représentes seuls.
je ne sais pas si ma question est logique par rapport au Java, est-ce-qu'on peut récupérer par exemple le dessin de plusieurs objets et les insérer dans un seul JFrame qui se situe dans la classe principale?
"je ne sais pas si ma question est logique par rapport au Java"
Ce n'est pas illogique, c'est même tout à fait faisable (on peux plus ou moins tout faire en Java)
"est-ce-qu'on peut récupérer par exemple le dessin de plusieurs objets"
Le problème pour t'aider c'est que ta demande n'est pas très claire :
Est-ce que tu parles d'"objets" au sens Java ?
Quels sont les "dessins" dont tu parles ? Sous quels formats sont-ils ?
"les insérer dans un seul JFrame qui se situe dans la classe principale?"
Ça ça devrait aller, mais ça va dépendre de tes "dessins d'objets"...
Ce n'est pas illogique, c'est même tout à fait faisable (on peux plus ou moins tout faire en Java)
"est-ce-qu'on peut récupérer par exemple le dessin de plusieurs objets"
Le problème pour t'aider c'est que ta demande n'est pas très claire :
Est-ce que tu parles d'"objets" au sens Java ?
Quels sont les "dessins" dont tu parles ? Sous quels formats sont-ils ?
"les insérer dans un seul JFrame qui se situe dans la classe principale?"
Ça ça devrait aller, mais ça va dépendre de tes "dessins d'objets"...
Je vais me répéter, mais je ne peux pas t'aider si je ne sais pas ce que sont tes "dessins".
Est-ce que ce sont des images (PNG, JPG, GIF, etc.), des composants AWT/SWING, autre chose ?
Moi je veux bien t'aider à combiner tes dessins, mais il faut que je sache comment tu les représentes s'il n'y a qu'un seul thread.
Est-ce que ce sont des images (PNG, JPG, GIF, etc.), des composants AWT/SWING, autre chose ?
Moi je veux bien t'aider à combiner tes dessins, mais il faut que je sache comment tu les représentes s'il n'y a qu'un seul thread.
Et dans le main :