JPanel内部的JPanel添加了顶部填充

时间:2015-04-07 10:19:17

标签: java swing layout-manager grid-layout

我想在CellPanel内添加JPanel JPanel。我这样做,因为我有按钮从这些JPanels删除内容并添加其他组件。问题是FlowLayout的{​​{1}}不会将我的JPanel从左上角定位。我该怎么办?

以下是我遇到此问题的代码:

CellPanel

它显示的内容: enter image description here

1 个答案:

答案 0 :(得分:0)

我做了一些研究,然后找到了解决方案。

    JPanel[] cellr = new JPanel[rows*columns];
    for(int i=0;i<rows*columns; i++){
        cellr[i] = new JPanel();
        cellr[i].setLayout(new GridBagLayout());
        mazeFrame.getContentPane().add(cellr[i]);
    }

   GridBagConstraints g = new GridBagConstraints();
   for(int i=0;i<rows*columns; i++){
        CellPanel cell = new CellPanel(wall.getImage());
        cell.setPreferredSize(new Dimension(mazeFrame.getWidth()/columns,mazeFrame.getHeight()/rows));
        g.fill = GridBagConstraints.BOTH;
        g.weightx = 1;
        g.weighty = 1;
        cellr[i].add(cell,g);
    }