• category: swing folder: SystemIcon title: FileのSystemIconを取得する tags: [SystemIcon, FileSystemView, ShellFolder] author: aterai pubdate: 2008-06-30T17:25:49+09:00 description: ファイル、ディレクトリなどのSystemIconを取得します。 image: https://lh4.googleusercontent.com/_9Z4BYR88imo/TQTUG6tI4SI/AAAAAAAAAlg/bci1geT80EM/s800/SystemIcon.png

概要

ファイル、ディレクトリなどのSystemIconを取得します。

サンプルコード

//16x16
smallLabel.setIcon(FileSystemView.getFileSystemView().getSystemIcon(file));
//32x32
largeLabel.setIcon(new ImageIcon(ShellFolder.getShellFolder(file).getIcon(true)));
View in GitHub: Java, Kotlin

解説

上記のサンプルでは、Windows環境でファイルをドロップするとそのファイルのSystemIconを表示することが出来ます。

  • 16x16
    • FileSystemView#getSystemIcon(File f)で小さいアイコンを取得
  • 32x32
    • ShellFolder.getShellFolder(file).getIcon(true)で大きいアイコンを取得
    • コンパイル時に「ShellFolderは内部所有のAPIであり、今後のリリースで削除される可能性があります」と警告が発生する

参考リンク

コメント