Taranael
Messages postés54Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention21 juin 2007
-
23 sept. 2006 à 16:45
Taranael
Messages postés54Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention21 juin 2007
-
23 sept. 2006 à 18:05
Salut ! Voilà mon soucis j'ai un JPanel avec un GridLayout rempli de JButtons pour implémenter un jeu de plateau. J'ai deux types d'affichages : un damier bicolore et un de type goban ! Pour le type goban je peinds le fond d'une couleur et je dessine manuellement une croix d'une autre couleur dessus ... sauf qu'entre deux boutons j'ai une bordure bleue ... Alors je l'ai repeinte dans la couleur de fond mais du coup maintenant mes lignes sont coupées au niveau du changement de bouton ... J'espère que c'est clair !
Il existe une façon simple que ma LineBorder soit de la couleur du fond sauf au niveau des lignes de mes boutons ? Sinon faut que je réécrive paintBorder ? Parce que je sais pas trop comment m'y prendre avec cette méthode :(
L'ordinateur fait toujours ce qu'on lui demande !
Le problème c'est qu'il ne comprend pas ce qu'on lui demande ...
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 23 sept. 2006 à 17:23
Salut,
j'ai vraiment pas tout compris mais si la bordure du rollover(je suppose) te derrange devalide la exemple
JButton bt = new JButton("my button");
bt.setForeground(Color.BLUE);
bt.setBackground(Color.BLACK);
bt.setFocusPainted(false);
bt.setMargin(null);
bt.setBorder(BorderFactory.createEmptyBorder());
//bt.setContentAreaFilled(false);//si tu le decommente tu n'auras pas acces à la methode setBackground
sinon deux autres solutions:
1 - tu refais toi meme la bordure en redefinissant AbstractBorder (peut etre viable)
2 - tu refais l'ui du boutton en redefinissant BasicButtonUI ce qui te permet d'avoir ton comportement graphique
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
Taranael
Messages postés54Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention21 juin 20071 23 sept. 2006 à 18:05
En fait je pensais que la partie bleue que je voyais était le panel du dessous ... donc j'ai juste eu à faire setBorder(BorderFactory.createEmptyBorder()) et du coup mes boutons se touchaient ... problème résolu :D
L'ordinateur fait toujours ce qu'on lui demande !
Le problème c'est qu'il ne comprend pas ce qu'on lui demande ...