我有JFileChooser
这样:
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if(fileChooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
//do something
}
现在我想设置它的最小/最大尺寸,因为如果我减小尺寸它看起来很糟糕,否则(甚至不是最小尺寸):
如果用户想让它小于例如此值,我是否无法冻结JFileChooser
的大小?:
我试过这个:fileChooser.setMinimumSize(new Dimensio(400, 400));
,但它没有用。
我觉得它看起来不太好,如果用户使窗口缩小时尺寸“跳回”,比例如600p * 600p
。
答案 0 :(得分:3)
您可以继承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像素可能在您的计算机上看起来不错,但不能保证它对其他人来说是一个很好的最小尺寸。最好只接受用户可以根据需要制作一个非常小的窗口。