有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何删除JFrame中的空白

我正在用Java开发一个GUI。我有几个问题想寻求帮助,希望你们中的一些人能提供帮助

您可能需要下图:

enter image description here

1。。条目之间的空间:我要删除它。现在,每个条目都是一个网格布局为2,1的JPanel。每行有另一个JPanel(第1行和第2行)。默认情况下,第2行是隐藏的,只应在单击编辑按钮时显示,然后在再次单击时隐藏。我可以使用setVisible()更改可见性。但它创造了这么大的空间

[SOLVED]2。。Line2有一个FlowLayout,如何使其左对齐

3。。每个条目都是类(称为“预置”),并存储在名为“预置列表”的类变量数组中。当我点击new branch(新建分支)按钮时,我会创建一个容量为+1的新阵列,将所有旧的预设转移到中,并在最后一个空间中创建一个新的预设。我需要做什么才能让新条目显示在GUI中?我尝试将其添加到JPanel,然后验证(),但没有成功

希望有人能帮助我,提前谢谢

编辑: 以下是#3中的代码:

private void newBranch(){
    Preset[] tempBranches = new Preset[branches.length + 1];

    for (int i = 0; i < branches.length; i++){
        tempBranches[i] = branches[i];
    }

    tempBranches[branches.length] = new Preset();
    branches = tempBranches;

    pane = new JPanel();
    pane.setLayout(new GridLayout(branches.length, 1));
    for (int i = 0; i < branches.length; i++){
        pane.add(branches[i]);
    }

    scroller = new JScrollPane(pane);
    this.add(scroller, BorderLayout.CENTER);

    this.repaint();
    this.validate();
}

共 (1) 个答案

  1. # 1 楼答案

    这将使面板充满子面板:

    for (int i = 0; i <= _listElements.size(); i++) {
    _panel.add(_listElements.get(i), new GridBagConstraints(0, i, 1, 1, 0, 0,
            GridBagConstraints.NORTH, GridBagConstraints.HORIZONTAL,
            new Insets(0, 0, 0, 0), 0, 0));
    }