编程语言
首页 > 编程语言> > 设置JFileChooser的最小/最大大小-Java

设置JFileChooser的最小/最大大小-Java

作者:互联网

我有一个像这样的JFileChooser:

JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if(fileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
    //do something
}

现在我要设置它的最小/最大尺寸,因为如果我减小尺寸,它看起来很糟糕,否则(这甚至不是最小的尺寸):

Example

如果用户要使其小于例如JFileChooser的大小,我是否可以冻结它的大小?:

Example

我已经尝试过:fileChooser.setMinimumSize(new Dimensio(400,400));,但是没有用.
而且我认为,如果当用户使窗口变小时(例如600p * 600p),尺寸“跳回”时看起来并不好.

解决方法:

您可以子类化JFileChooser,并以其createDialog方法自定义对话框:

JFileChooser fileChooser = new JFileChooser() {
    private static final long serialVersionUID = 1;

    @Override
    public JDialog createDialog(Component parent) {
        JDialog dialog = super.createDialog(parent);
        dialog.setMinimumSize(new Dimension(600, 600));
        return dialog;
    }
};

不过,这样做不会带来太大收益.其他用户将拥有与您不同的桌面主题和字体. 600×600像素在您的计算机上可能看起来不错,但不能保证它将是其他像素的最小尺寸.最好只是接受用户可以根据实际需要将窗口缩小得非常小.

标签:jfilechooser,swing,min,java,minimum-size
来源: https://codeday.me/bug/20191110/2013579.html