Java 如何使边界布局的中心位于顶部

Java 如何使边界布局的中心位于顶部,java,awt,layout-manager,border-layout,Java,Awt,Layout Manager,Border Layout,我有一个边框布局,主要内容在中间。然而,我在底部角落有一些内容,它与主要内容重叠,尽管那里没有内容。有没有办法使中心重叠 正文在卷曲开始的同一点处截断 private void prepareGUI() throws IOException { mainFrame = new JFrame("Holy Bible"); mainFrame.setSize(700, 500); mainFrame.setLayout(new BorderLayo

我有一个
边框布局
,主要内容在中间。然而,我在底部角落有一些内容,它与主要内容重叠,尽管那里没有内容。有没有办法使中心重叠

正文在卷曲开始的同一点处截断

private void prepareGUI() throws IOException {

        mainFrame = new JFrame("Holy Bible");
        mainFrame.setSize(700, 500);
        mainFrame.setLayout(new BorderLayout());
        mainFrame.setLocationRelativeTo(null);
        mainFrame.setIconImage(new ImageIcon(getClass().getResource("/assets/bible/textures/icon.png")).getImage());
        mainFrame.getContentPane().setBackground(Color.WHITE);
        mainFrame.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent windowEvent) {
                System.exit(0);
            }
        });
        mainFrame.addKeyListener(this);

        centerPanel = new JPanel();
        centerPanel.setBackground(Color.WHITE);
        centerPanel.setLayout(new FlowLayout());

        leftLabel = new JLabel("", JLabel.CENTER);
        leftLabel.setFont(new Font(Font.SANS_SERIF, Font.PLAIN, 12));
        centerPanel.add(leftLabel);

        rightLabel = new JLabel("", JLabel.CENTER);
        rightLabel.setFont(new Font(Font.SANS_SERIF, Font.PLAIN, 12));
        centerPanel.add(rightLabel);

        leftCurl = new JLabel();
        leftCurl.setHorizontalAlignment(JLabel.LEFT);
        leftCurl.setVerticalAlignment(JLabel.BOTTOM);
        leftCurl.setIcon(new ImageIcon(getClass().getResource("/assets/bible/textures/curlleft15.png")));
        mainFrame.add(leftCurl, BorderLayout.SOUTH);

        rightCurl = new JLabel();
        rightCurl.setHorizontalAlignment(JLabel.RIGHT);
        rightCurl.setVerticalAlignment(JLabel.BOTTOM);
        rightCurl.setIcon(new ImageIcon(getClass().getResource("/assets/bible/textures/curlright15.png")));
        mainFrame.add(rightCurl, BorderLayout.SOUTH);

        mainFrame.add(centerPanel, BorderLayout.CENTER);
        mainFrame.setExtendedState(JFrame.MAXIMIZED_BOTH); // Maximizes frame
        mainFrame.setUndecorated(fullScreen);
        mainFrame.setVisible(true);
    }

这是准备GUI的代码。文本以单独的方法添加。

您可能需要嵌套JPanel和布局来实现您的目标。例如,两个使用BorderLayout的JPanel可以帮助主JPanel使用BorderLayout,将文本添加到中心位置。然后将另一个使用BorderLayout的JPanel添加到主JPanel的东或LINE_端点位置。将页面卷曲放置在第二个JPanel的BorderLayout.page\u末端或南部位置。

“我在底部角落有一些内容,它与主要内容重叠,即使那里没有内容。”
--没有内容时,它如何与内容重叠??请避免像这样混淆帖子。显示代码和图片,并尽量在描述中更加清晰。对于代码,最好是post a,它会重叠的唯一原因是您在
边框布局的
中心位置添加了更多组件。考虑提供一个说明你的问题的方法。这将减少混乱和更好的响应