如何调整JFileChooser的大小

时间:2013-07-31 20:34:14

标签: java swing jfilechooser file-browser

我正在使用Java Swing设计一个文件浏览器,这是我到目前为止所拥有的:

我在面板中有一个JFileChooser,但是当我重塑窗口时它保持相同的大小。 但是,我想让它看起来像这样:

Without the items inside resizing of course.

是否可以使实际的浏览器框与表单一起调整大小?

编辑:我不想弹出JFileChooser,JFileChooser是INSIDE the Frame。

2 个答案:

答案 0 :(得分:0)

您不需要将文件选择器添加到面板 - 如果您只是初始化一个并将其设置为可见,它将自动调整大小。

JFileChooser chooser = new JFileChooser();
chooser.setVisible(true);
int returnVal = chooser.showOpenDialog(null);
if (returnVal == JFileChooser.APPROVE_OPTION) {
    //continue your code here

要将文件选择器合并到面板中,请尝试以下操作:

JFrame frame = new JFrame();
JPanel panel = new JPanel(new BorderLayout());
JFileChooser chooser = new JFileChooser();
panel.add(chooser);
frame.add(panel);
frame.pack();
frame.setVisible(true);

我不确定您之前是如何使用BorderLayout的,但此代码在我的计算机上运行良好。

答案 1 :(得分:0)

如果您只是将文件选择器面板添加到面板,它将保留其首选大小,因为默认情况下面板使用FlowLayout。

尝试使用CENTER将文件选择器面板添加到面板的BorderLayout。然后希望组件在调整框架大小时调整大小(假设文件选择器面板使用适当的布局管理器)。