Java 如何在JTextFields下面获取JButton

Java 如何在JTextFields下面获取JButton,java,swing,user-interface,jpanel,Java,Swing,User Interface,Jpanel,我已经为我的GUI创建了一个GridLayout来显示6行4列。我正在尝试在第6行显示“计算”和“退出”两个按钮。我只有两个窗格。为第5行(即重量标签和文本字段)添加四个窗格。我只是想让“计算”和“退出”按钮位于它们自己的行上。我试着去做pane.add();填补了这个空白,却无法让它发挥作用。我错过了什么,这样我就可以在自己的一排按钮 基本上我有 pane.setLayout(new GridLayout(6, 4)); pane.add(score1L); pan

我已经为我的GUI创建了一个GridLayout来显示6行4列。我正在尝试在第6行显示“计算”和“退出”两个按钮。我只有两个窗格。为第5行(即重量标签和文本字段)添加四个窗格。我只是想让“计算”和“退出”按钮位于它们自己的行上。我试着去做pane.add();填补了这个空白,却无法让它发挥作用。我错过了什么,这样我就可以在自己的一排按钮

基本上我有

    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);
可能的选择:

  • 添加空jlabel以填补任何空白
  • 使用混合布局——嵌套JPanel,每个都使用自己的布局并向其中添加组件。例如,整个JPanel可以使用BorderLayout。文本字段/标签可以位于GridLayout或GridBagLayout中,使用JPanel将BorderLayout.CENTER添加到主JPanel。JButtons可以使用JPanel保存在自己的GridLayout中,然后JPanel将BorderLayout.PAGE_END添加到主JPanel中
  • 使用允许更复杂布局(如GridBagLayout)的布局管理器,或者更好地使用第三方布局管理器(如MigLayout)
  • 也许最好的方法是使用JTable保存数据网格,将其添加到JScrollPane,然后将按钮放在JScrollPane下面
我能够使用窗格。添加(“”);