JAVA在JFRAME上定位标签

时间:2017-12-02 10:48:32

标签: java swing user-interface netbeans

我需要绘制一个水平直方图,我正在设置直方图的标签,如下所示,

CODE

public static void drawVertical(){

 JFrame frame = new JFrame("Horizontal Histogram");
 frame.setSize(300, 300);
 frame.setVisible(true);
 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);      


 JLabel label_01=new JLabel("0-29");  
 label_01.setAlignmentX(-290);
 label_01.setAlignmentY(290);

 JLabel label_02=new JLabel("30-39"); 
 label_02.setAlignmentX(-290);
 label_02.setAlignmentY(270);

 JLabel label_03=new JLabel("40-69"); 
 label_03.setAlignmentX(-290);
 label_03.setAlignmentY(250);

 JLabel label_04=new JLabel("70-100"); 
 label_04.setAlignmentX(-290);
 label_04.setAlignmentY(230);

 frame.add(label_01);
 frame.add(label_02)
 frame.add(label_03);
 frame.add(label_04);
 }

但这是我得到的输出:(

输出

enter image description here

这是我的预期输出(用MS绘制编辑),

预期输出

enter image description here

有谁能弄清楚这里有什么不对吗?
为什么没有显示其他标签?

1 个答案:

答案 0 :(得分:0)

这个问题的答案是你不应该使用charBorderLayout默认使用),而是使用JFrame。这样您就可以将GridLayout添加到JLabels。一个例子如下:

JFrame