2016-01-16 25 views
1

我已经为我的GUI创建了一个GridLayout来显示6行和4列。我正在尝试获取两个按钮,即“计算”和“退出”以显示在第6行。对于第5行,我只有两个pane.add(这是重量标签和文本框)。我只是想让计算和退出按钮在他们自己的行上。我试图做pane.add();填补这个空白,并且无法实现。我错过了什么,以便我可以在自己的行上获得按钮?如何让JButton在JTextField下面

基本上我有

pane.setLayout(new GridLayout(6, 4)); 

    pane.add(score1L); 
    pane.add(score1TF); 
    pane.add(weight1L); 
    pane.add(weight1TF); 
    pane.add(score2L); 
    pane.add(score2TF); 
    pane.add(weight2L); 
    pane.add(weight2TF); 
    pane.add(score3L); 
    pane.add(score3TF); 
    pane.add(weight3L); 
    pane.add(weight3TF); 
    pane.add(score4L); 
    pane.add(score4TF); 
    pane.add(weight4L); 
    pane.add(weight4TF); 

    pane.add(weightAvgL); 
    pane.add(weightAvgTF); 

    pane.add(calculateB); 
    pane.add(exitB); 
+0

我能够使用pane.add( “”); – MrMatt

回答

2

可能的选项:

  • 添加空的JLabel填写任何空白。
  • 使用混合布局 - 嵌套JPanels,每个使用其自己的布局并向其添加组件。例如,整个JPanel可以使用BorderLayout。 textfields/labels可以在GridLayout或GridBagLayout中使用JPanel将BorderLayout.CENTER添加到主JPanel。可以使用JPanel将JButtons保存在自己的GridLayout中,然后将BorderLayout.PAGE_END添加到主JPanel。
  • 使用布局管理器可以实现更复杂的布局,比如GridBagLayout,或者更好的是第三方布局管理器,比如MigLayout。
  • 也许最重要的是--USE一个JTable来保存你的数据网格,将其添加到JScrollPane中,然后将JScrollPane的下方的按钮。
相关问题