我在 JFrame 中有 JPanel(但它们的大小不同,并且 JFrame 是全屏的)。JPanel 有一个 FlowLayout,因为我在那里动态添加了小方块 (JPanels)。那些方块排列得很好(它们在 JPanel 结束时移动到下一行),直到我调整 JFrame 的大小 - 然后这些方块显示在一行中,是什么使它们的一部分不可见(它们在屏幕结束时消失)和 JPanel调整大小。我可以做些什么来保持 JPanel 的永久大小?JFrame 的 LayoutManager 是 MigLayout。
问问题
1195 次
1 回答
2
一种可能的解决方案:覆盖其 getPreferredSize() 方法以返回一个常量 Dimension。
public class MyPanel extends JPanel {
private static final int PANEL_W = 400;
private static final int PANEL_H = 300;
public MyPanel() {
// ... etc...
}
@Override
public Dimension getPreferredSize() {
return new Dimension(PANEL_W, PANEL_H);
}
// ... etc...
}
于 2012-02-24T23:49:55.977 回答