Files
DEV/DEV2.1/TP06/Formes.java
Simoes Lukas 080e0022b8 Fin du TP06
2025-02-16 23:19:06 +01:00

48 lines
1.5 KiB
Java

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);
}
}