Bonjour,
Voilà, j'ai un petit problème pour placer d'un coté (gauche) une colonne de bouton, et a droite une zone pour dessiner en double-buffer.
J'ai d'abord fait ceci SANS double buffer, en créant deux JPanel (bouton / dessin), comme ceci:
mais bon.. problèmeme ça clignote pas mal..
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
20
21
22
23
24
25
26
27
28
29
30
31 Container contentPane = getContentPane(); //zone dessin canvas = new JPanel(); contentPane.add(canvas, "Center"); //bouton JPanel p = new JPanel(); p.setLayout( new GridLayout(nbCannon,0)); addButton(p, "Start", new ActionListener() { //blabla est un thread... new blabla(canvas); // j envoi le jpanel pour dessiner dedans... //dans le thread blabla je recupete le Jpanel // Graphics g = canvas.getGraphics() // puis g.Draw.... } contentPane.add(p, "West"); } public void addButton(Container c, String title, ActionListener a) { JButton b = new JButton(); c.add(b); b.addActionListener(a); }
j'ai donc voulut mettre du double-buffer "hardware"
j'ai modifier en en ajoutant
maintenant pour dessiner je doit utiliser le strategy
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 createBufferStrategy( 2 ); strategy = getBufferStrategy();
en faisant Graphics g = strategy.getDrawGraphics();
puis g.draw...
mais la le probleme c'est que ça m'affiche depuis le coin 0,0 et donc ca dessine SUR les boutons....
Je ne sais pas comment faire pour forcer a dessiner dans le JPnale de droite..
SI quelqu'un pouvait me donner un coup de main, ou me conseiller si il pense que ma méthode n'est pas la bonne ?
d'avance merci
Partager