import javax.swing.*; import java.awt.*; public class Formes extends JComponent { @Override protected void paintComponent(Graphics pinceau) { // obligatoire : on crée un nouveau pinceau pour pouvoir le modifier plus tard Graphics secondPinceau = pinceau.create(); // obligatoire : si le composant n'est pas censé être transparent if (this.isOpaque()) { // obligatoire : on repeint toute la surface avec la couleur de fond secondPinceau.setColor(this.getBackground()); secondPinceau.fillRect(0, 0, this.getWidth(), this.getHeight()); } // Carré secondPinceau.setColor(new Color(51,153,255)); secondPinceau.fillRect(100, 100, 50, 50); secondPinceau.setColor(Color.BLUE); secondPinceau.drawRect(100,100,50,50); // Disque secondPinceau.setColor(Color.GREEN); secondPinceau.drawOval(175,100,25,25); // Texte secondPinceau.setColor(new Color(80, 00, 80)); Font police = new Font("Arial", Font.BOLD, 24); secondPinceau.setFont(police); secondPinceau.drawString(">o<", 100, 200); // Image Image logo = Toolkit.getDefaultToolkit().getImage("logo.png"); secondPinceau.drawImage(logo, 175, 175, this); } public static void main(String[] args) { JFrame fenetre = new JFrame(); Formes test = new Formes(); // on configure la fenetre fenetre.setSize(500, 500); fenetre.setLocation(0, 0); fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); fenetre.add(test); fenetre.setVisible(true); } }