Files
DEV/DEV2.1/TP14/02_Couleurs/Composant.java
Simoes Lukas 2c3e150ec5 wow le tp là
2025-09-04 15:36:55 +02:00

57 lines
1.5 KiB
Java

import java.awt.*;
import javax.swing.*;
public class Composant extends JComponent {
private Color couleur1;
private Color couleur2;
private String nomCouleur1;
private String nomCouleur2;
public Composant(Color couleur1, Color couleur2, String nomCouleur1, String nomCouleur2) {
this.couleur1 = couleur1;
this.couleur2 = couleur2;
this.nomCouleur1 = nomCouleur1;
this.nomCouleur2 = nomCouleur2;
}
@Override
public void paintComponent(Graphics pinceau) {
Graphics secondPinceau = pinceau.create();
FontMetrics metrique = pinceau.getFontMetrics();
int tailleTexte1 = metrique.stringWidth(this.nomCouleur2);
int[] x1 = {0, 0, this.getWidth()};
int[] y1 = {0, this.getHeight(), this.getHeight()};
int[] x2 = {0, this.getWidth(), this.getWidth()};
int[] y2 = {0, 0, this.getHeight()};
secondPinceau.setColor(this.couleur1);
secondPinceau.fillPolygon(x1, y1, 3);
secondPinceau.setColor(this.couleur2);
secondPinceau.fillPolygon(x2, y2, 3);
secondPinceau.setColor(this.couleur1);
secondPinceau.drawString(this.nomCouleur2, this.getWidth() - tailleTexte1 - 10, metrique.getAscent() + 10);
secondPinceau.setColor(this.couleur2);
secondPinceau.drawString(this.nomCouleur1, 10, this.getHeight() - 10);
}
public void setCouleur1(Color couleur) {
this.couleur1 = couleur;
}
public void setCouleur2(Color couleur) {
this.couleur2 = couleur;
}
public void setNomCouleur1(String couleur) {
this.nomCouleur1 = couleur;
}
public void setNomCouleur2(String couleur) {
this.nomCouleur2 = couleur;
}
}