在向其添加ChartPanel之后,我无法让我的JLabel居中在我的JPanel中:
JPanel panel = new JPanel(new BorderLayout());
panel.add(visualiser(ternaire), BorderLayout.NORTH);//visualiser(ternaire) is the ChartPanel
panel.add(new JLabel("L'alliage a bien été enregistré."), BorderLayout.CENTER);
JOptionPane jop = new JOptionPane();
jop.showMessageDialog(null, panel, "Information", JOptionPane.PLAIN_MESSAGE);
任何想法为什么BorderLayout.CENTER不起作用?
答案 0 :(得分:12)
JLabel
水平对齐到左侧。
您需要将horizontalAlignment
设置为JLabel.CENTER
JPanel panel = new JPanel(new BorderLayout());
JLabel label = new JLabel("L'alliage a bien été enregistré.");
label.setHorizontalAlignment(JLabel.CENTER);
label.setVerticalAlignment(JLabel.CENTER);
panel.add(label, BorderLayout.CENTER);
答案 1 :(得分:1)
这不是你的JLabel的中心,它把它放在左侧(我认为)。您需要更改JLabel的对齐方式。