0

我使用NetBeans GUI Builder创建了一个 GUI,并手动编写了一些附加代码。我真的不知道如何正确描述这个问题,所以请看下面的图片。

  1. 这是一个默认视图,您可以在其中注意到已在 JPanel 中手动创建的 JTable:

                jPanel1.setLayout(new BorderLayout());
    
                TableModel model = db.populateJTable();
                JTable jTable1 = new JTable(model);
                jTable1.setModel(model);
    
                JScrollPane tableContainer = new JScrollPane(jTable1);
    
                jPanel1.add(tableContainer);
                View.super.getContentPane().add(jPanel1);
                //View.super.pack();
                View.super.setVisible(true);
    

在此处输入图像描述

  1. 当我尝试水平调整窗口大小时,所有组件都会通过按指定调整大小做出正确反应,但 JTable 只是停留在之前渲染的位置,与其他元素重叠:

在此处输入图像描述 有人可以告诉我发生了什么,我应该如何进行?非常感谢

4

1 回答 1

0

一个强大的解决方案:使用Layouts。他们在调整大小时为您完成所有工作。

一个很好的是GridBagLayout。如果需要更复杂的布局,可以使用强大的BoxLayout

如果您想手动设计布局。对我来说,我更喜欢使用 NetBeans 7.2.1 设计器。在设计窗口中设计布局时,它会自动为您配置布局。

于 2013-02-10T11:41:23.217 回答