Java 摆动布局问题

Java swing layout problems

我在应用程序布局方面遇到困难。我是 java 的新手。我开发了一个我之前在 VB 开发的应用程序。在尝试学习 java 时,我开发了具有绝对布局(从 youtube 教程中学习)和选项卡式窗格的相同应用程序。我不喜欢我开发的东西,所以我重新开始。这次使用布局管理器和卡片布局作为主要布局。我正在努力按照我想要的方式得到东西。我花了很多天的试验和错误来按照我想要的方式制作我的面板。我有一个主 class 和 4 张不同的卡片。我尝试使用 eclipse 和 window builder 来尝试设计我的面板,但那是一个史诗般的失败。我已经重新开始设计我的布局,而不是在 eclipse 中进行设计,并且基本上将边框布局作为我所有卡片的基础。现在,我在使用一个面板时遇到了问题。第一个面板是我对绝对布局的最初尝试。第二张图片是我最近尝试使用边框布局,在南面有一个按钮(后退),在中心有一些文本字段,在北面有我的主要显示。 NORTH 显示器不够宽。这是我的 NORTH 面板的代码:

setLayout(new BorderLayout(0, 0));

        JPanel panelNorth = new JPanel();
        add(panelNorth, BorderLayout.NORTH);

        JScrollPane scrollPane = new JScrollPane();
        panelNorth.add(scrollPane);

        tableDisplayScores = new JTable();
        scrollPane.setViewportView(tableDisplayScores);

        JPanel panelCenter = new JPanel();
        add(panelCenter, BorderLayout.CENTER);

在我完全发疯之前,如何在不绝对的情况下增加 NORTH 面板的宽度?还是我完全错了?

绝对布局示例:

布局管理器示例:

正如我的评论所述,我通过反复试验发现了这一点。我删除了 panelNorth 并将我的 scrollPane 添加到 BorderLayout.NORTH:

        JScrollPane scrollPane = new JScrollPane();
        add(scrollPane, BorderLayout.NORTH);

        tableDisplayScores = new JTable();
        scrollPane.setViewportView(tableDisplayScores);