Je suis en train de concevoir un système d'optimisation pour les transports publics dans une grande ville. J'ai donc une carte avec quelques points dessus, mais je m'en fous)
Tout ce dont j'ai besoin est: mon propre JButton, qui ressemble à un cercle rempli de couleurs et à une petite balise de texte près d'elle. J'ai eu quelques problèmes en surchargeant la méthode paintComponent() .. le bouton rond est peint correctement, mais pas le texte. MAIS, quand je redimensionne la fenêtre manuellement, le texte apparaît pendant une seconde, puis il est repeint et disparaît. espérons que vous les gars ont compris mes besoins, grâce à l'aide;)Peinture d'un JButton personnalisé et d'une ligne de texte
import java.awt.*;
import javax.swing.*;
public class JRoundButton extends JButton {
String label;
Color color;
int x,y;
public JRoundButton(Color color,int x,int y,String str)
{
label=str;
this.x=x;
this.y=y;
this.color=color;
}
protected void paintComponent(Graphics g)
{
super.paintComponent(g);
Dimension size = getPreferredSize();
setPreferredSize(size);
this.setBounds(0, 0, 10, 10);
setContentAreaFilled(false);
g.setFont(new Font("Arial",Font.BOLD,14));
g.drawChars(label.toCharArray(), 0, label.length(), 12,12);
g.fillOval(0,0,8,8);
}
public void paintBorder(Graphics g)
{
g.setColor(Color.white);
g.drawOval(0,0, 9, 9);
}
public static void main(String[] args)
{
JButton button = new JRoundButton(Color.GRAY,150,150,"Times Square");
JFrame frame = new JFrame();
frame.getContentPane().setBackground(Color.black);
frame.setSize(300, 300);
frame.setVisible(true);
frame.add(button);
}
}
merci beaucoup pour 1), 2) et 4), mais pas pour le troisième, car j'ai besoin d'un cercle cliquable et d'une ligne de texte près de .... c'est donc le problème! – NavigatingYourSoul
Eh bien, votre approche ne résoudra pas non plus la troisième exigence. Je ne suis pas sûr de comprendre l'exigence. On dirait que vous avez besoin de deux composants sur un panneau. Un JButton avec une icône et un JLabel avec le texte. Ou peut-être que vous avez besoin d'un JCheckBox. – camickr