在JFrame中布局JPanel

lem*_*des 2 java layout swing

我对Java上的GUI知之甚少,因为我更多的是在后端,而不是在视图方面,所以我遇到了在Jframe上正确对齐和布局内容的问题.基本上我想得到这些结果

在此输入图像描述

图像已经说明了,但是当我运行我的代码时我拥有的就是这个.

在此输入图像描述

两端没有填充,面板正好在Jframe的边框上,我想要纠正,我不希望这种布局,其中面板与Jframe的大小相同,在至少在两端会有一些填充物.

这是我的代码,这是我的框架的构造函数

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    String[] cNames = {"First Name", "Middle Name","Last Name","Status"};
    Object[][] data = {{"John Doe", "John Doe", "John Doe", "Single"},
                       {"Doe John", "Doe John", "Doe John", "Married"}};
    JTable table = new JTable(data, cNames);
    table.setPreferredScrollableViewportSize(new Dimension(500, 70));

    jScrollPane1 = new JScrollPane(table);

    listPahel = new JPanel();
    listPahel.setLayout(new BorderLayout());
    listPahel.add(jScrollPane1, BorderLayout.CENTER);

    add(listPahel);
Run Code Online (Sandbox Code Playgroud)

上面的代码重新进入上面的第二张图片

如果您有任何见解,请赐教

Rei*_*eus 5

最简单的方法是在你的上面设置一个边框JPanel:

listPahel.setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));
Run Code Online (Sandbox Code Playgroud)