Dessin sur un Jpanel et mise-a-jour de dessin sur un Jpanel
Salut,
C'est pour demander quelques explications et aides sur 2 problemes que je n'arrive pas à bien cerner.
Pb1:(Explication) Voici un petit bout de code pour mettre en blanc le fond de mon Jpanel. Je constate que le paintComponent, est appelé deux fois(affiche 2 fois DEBUT2), alors que je dessine le composant juste une seule fois. Pourquoi et si possible comment l'éviter ?
Code:
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 32 33 34 35 36 37 38 39 40 41 42 43
|
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.SystemColor;
import java.awt.BorderLayout;
import java.awt.geom.Line2D;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class sampleFrame {
public static void main(String[] args)
{
samplePanel plot = new samplePanel();
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.getContentPane().add(plot); //.add(plot);
f.setSize(100,65);
f.setLocation(50,50);
f.setVisible(true);
}
}
class samplePanel extends JPanel
{
protected void paintComponent(Graphics g)
{
Graphics2D g2 = (Graphics2D)g;
super.paintComponent(g);
setBackground(Color.WHITE); //Couleur de fond du composant
System.out.println("DEBUT2");
}
} |
Pb2:(Explication)
Au fait dans la classe: samplePanel je fait des dessins de coubes de fonctions. Mais lorqu'on entre les parametres de la deuxième fonction, le dessin ce fait sur la courbe de la premième fonction dessinée. Meme si les paramettres de deux foncions sont différentes. Pourquoi et si possible comment l'éviter ?
Merci pour tous aides.