16

我只是想知道:Gmail 如何使用 Windows/Mac 文件选择器来上传文件?有没有办法在 Java中做到这一点?

在此处输入图像描述

就个人而言,我不喜欢它的JFileChooser外观,我认为让我的用户能够使用他们更习惯的东西会更好。提示任何人?

4

4 回答 4

22

请改用旧的 java.awt.FileDialog:

new java.awt.FileDialog((java.awt.Frame) null).setVisible(true);
于 2012-05-24T21:07:18.137 回答
14

您可以尝试使用 JFileChooser 但将外观设置为平台外观:

    try {
        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    }catch(Exception ex) {
        ex.printStackTrace();
    }

这将使所有摆动组件看起来更好!

于 2012-05-24T21:11:58.887 回答
5

GMail 是一个最终依赖于浏览器来显示该组件的 Web 应用程序。现在一个好的解决方案是使用系统的 Native Look&Feel,它提供了一个与您显示的非常相似的 JFileChooser:

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

在此处输入图像描述

编辑:Pulsar 的解决方案更好,因为它提供了您正在寻找的确切对话框。我不确定它是否提供了 JFileChooser 的所有功能。

于 2012-05-24T21:08:38.983 回答
3

SWT组件的样式始终与正在运行的操作系统中的样式相同。你可以看到一些例子:

假设从 Java 7 版本开始,Swing 样式将更像操作系统的样式,但可能会在 Java 8 中看到。

于 2012-05-24T21:17:44.073 回答