[JAVA] composant qui ne s'affiche pas - composant perso ;)

Bonjour, j’ai décidé ce matin étant de bonne humeur je me suis décidé a créer mes propres classes de composants. :sol:

Donc voilà, je me suis mit a faire mon bouton, et a vouloir l’afficher sur un panel.

Et là, erreur: :paf:

En fait, le bouton ne s’affiche que s’il n’y a pas d’image en “arrière plan”. Sinon, c simple, il n’apparait meme pas. J’ai essayé avec un composant swing de base, ca marche impeccablement. Donc étant dans une impasse, je me demande si vous sauriez m’aider.

Ci dessous ma classe :

public class Bouton extends Component
{

public Bouton(int positionx, int positiony, int largeur, int hauteur)
{
	this.positionx = positionx;
	this.positiony = positiony;
	this.largeur = largeur;
	this.hauteur = hauteur;
	addMouseListener(this);
	addMouseMotionListener(this);
	repaint();
}

public void paint(Graphics g)
{
	int x1 = positionx + (int) largeur/5;
	int x2 = positionx + (int) (largeur/5)*4;
	if (!actif)
	{
		g.drawImage(boutongauche, positionx, positiony, (int) largeur/5, hauteur,this);
		g.drawImage(boutoncentre, x1, positiony, (int) (largeur/5)*3 , hauteur,this);
		g.drawImage(boutondroit, x2, positiony, (int) largeur/5, hauteur ,this);
	}
	else
	{
		g.drawImage(boutongaucheactif, positionx, positiony, (int) largeur/5, hauteur,this);
		g.drawImage(boutoncentreactif, x1, positiony, (int) (largeur/5)*3 , hauteur,this);
		g.drawImage(boutondroitactif, x2, positiony, (int) largeur/5, hauteur ,this);
	}
	g.drawString("yosh",positionx + largeur/2 - 20, positiony + hauteur/2);
}

}

Voilà, je vous remercie de votre lecture,

Si vous pouviez m’aider… :super:

Et si tu met super().paint() en premier dans ta methode paint() ?

Malheureusement pas mieux :sweet:

J’ai aussi essayé en faisant un extends JButton, ca marche pas mieux non plus, pourtant j’avais de l’espoir sur ce coup là :grrr:

alors transforme paint en paintComponent et super.paint() en super.paintComponent()

et si ca marche toujours pas fais extends JPanel plutot

Bah en Panel c bon, enfin apparament, mais j’ai un problème, c la taille de ce panel

Elle n’est pas du tout adaptée, mais bon, je vais essayer de résoudre ce problème tout seul.

Merci :jap: