当前位置: 首页 > 面试题库 >

如何在JFileChooser中显示文件的默认系统图标?

卫沈义
2023-03-14
问题内容

如何在中显示文件的默认系统图标JFileChooser?即文件中的图标JFileChooser应与桌面和资源管理器中显示的图标相同?

例如,NetBeans图标的JFileChooser外观将与桌面上的外观不同!

这该怎么做?


问题答案:

我们可以FileSystemView通过调用类中的getFileSystemView()静态方法来使用该类并获取其对象,然后使用该getSystemIcon()方法获取一个File对象并返回其图标。

FileSystemViewFileView类存在于javax.swing.filechooser包中。
File类在java.io包中。

注意:
FileSystemView不扩展FileView。因此,您不能FileSystemViewjf.setFileView()

JFileChooser jf=new JFileChooser();
jf.setFileView(new MyFileView());
jf.showOpenDialog(this);

class MyFileView extends FileView
{
      public Icon getIcon(File f)
      {
      FileSystemView view=FileSystemView.getFileSystemView();
            return view.getSystemIcon(f);
      }
}

this代表当前帧。假设编写此代码的类是的子类JFrame

或者以一种简单的方式

jf.setFileView(new FileView(){
            public Icon getIcon(File f)
            {
                return FileSystemView.getFileSystemView().getSystemIcon(f);
            }
        });


 类似资料:
  • 问题内容: 我想显示类似于java2s.com“创建惰性文件树”的文件树,但要包括实际的系统图标- 特别是对于文件夹。SWT似乎不提供此功能(Program API不支持文件夹),因此我提出了以下建议: 但是,应该透明的区域以黑色显示。我该如何工作,还是应该采用其他方法? 更新: 我认为原因完全不是为了透明。 现在,我填补与现在,这是一个可接受的解决方法。不过,我想在这里知道真正的解决方案… 问题

  • 我正在尝试使用一个菜单栏,使用户能够选择一个文件,并在JPanel中显示它,图像应该完全适合JPanel。但是JFileChooser在从对话框中成功选择文件时不会显示任何内容。我试着参考了许多链接:如何向JPanel添加图像?浏览图像文件并使用Java Swing显示它,但没有任何结果。请帮帮忙。以下是我的代码: 更新后的代码如下:

  • 问题内容: 我想在this的文本框中设置默认文件名。我可以设置吗? 问题答案: 使用以下代码: 您必须指定完整路径

  • 问题内容: 我正在尝试实现一个JFileChooser,它允许用户通过ftp选择远程系统上的文件。 我读过的所有文章都说,可以通过扩展FileSystemView来实现,以便覆盖所有文件系统方法(getFiles等)并跨ftp路由。 我没有实现这一点的运气,因为FileSystemView似乎仍在调用本地函数。 任何人都可以确认可以做到这一点和/或为我指明正确的方向吗? 问题答案: 试试vfsjf

  • 我正在尝试为Android牛轧糖开发一个应用程序,我想在状态栏中显示一些信息/文本,生成一个Android服务例程。所以我的问题是,我不知道如何显示状态栏中的文本。 我添加了一个示例图像来显示我的确切意思(红圈)。我知道这是有可能的,因为我在play Store的一款电池监控器应用中看到了它。 我已经尝试了notificationbatch.builder,但我认为这不是正确的方法。也许是一个叠加

  • 问题内容: 我想使用IPython笔记本作为交互式分析我使用Biopython模块制作的一些基因组图的方法。尽管有大量有关如何在IPython笔记本中使用内联图形的文档,但GenomeDiagram使用ReportLab工具箱,我认为IPython不支持内联图形。 但是,我当时想,一种解决方法是将绘图/基因组图写到文件中,然后打开图像内联图像,结果将是相同的,如下所示: 但是,我不知道该怎么做-或