Java 如何在动态逐个添加组件时自动增加JFrame的高度
我正在设计一个swing独立应用程序。在我的应用程序中,我有一个表单,在这个表单中,当单击add按钮时,我会动态地一个接一个地添加一些组件。我的要求是,当我从上到下添加组件时,当添加的组件高度超过时,jframe和Main jpanel必须增加其高度 将ContainerListener添加到JFrame。在componentAdded方法中,打包JFrame。大概是这样的:Java 如何在动态逐个添加组件时自动增加JFrame的高度,java,swing,jframe,jpanel,Java,Swing,Jframe,Jpanel,我正在设计一个swing独立应用程序。在我的应用程序中,我有一个表单,在这个表单中,当单击add按钮时,我会动态地一个接一个地添加一些组件。我的要求是,当我从上到下添加组件时,当添加的组件高度超过时,jframe和Main jpanel必须增加其高度 将ContainerListener添加到JFrame。在componentAdded方法中,打包JFrame。大概是这样的: JFrame frame = getJFrame(); frame.addContainerListen
JFrame frame = getJFrame();
frame.addContainerListener(new ContainerListener() {
@Override
public void componentAdded(ContainerEvent e) {
frame.pack();
}
@Override
public void componentRemoved(ContainerEvent e) {
}
});
frame.pack()
,或者可能更好,在JScrollPane
中有一个合适的渲染器的JList
。先生,当我使用JScollpane时。但当没有添加的组件超过主jpanel的高度时。主jpanel不会自动调整其高度。请提出一个解决方案。