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