我需要在Swing中选择一个标准容器(JPanel?),可以将其用作占位符,并向其中添加另一个扩展JPanel的自定义组件:
JPanel containerPanel;
// built by a library from a text file, automatically part of a nice layout
MyPanel componentPanel;
// something complicated that I can't integrate with the builder library
containerPanel = builder.getMyContainerPanel();
componentPanel = new MyPanel(...);
containerPanel.add(componentPanel);
是否有办法以某种方式将两个面板尺寸结合在一起,以便正确地调整尺寸?我不太确定调整大小如何摆动,但是我想要的是将外部
containerPanel
用作薄包装纸,从而使我的componentPanel
服从于此,并且外部面板将尽可能多的委派给内部面板。我不想这样做,但是这似乎是将构建器库与自定义组件分离的最佳方法。
最佳答案
我只是使用GridLayout
。
containerPanel.setLayout(new GridLayout(1, 1));
这样的好处是,您可以仅添加不带任何参数的子面板,并且可以保证使用整个区域:
containerPanel.add(componentPanel);