TITLE:FileのSystemIconを取得する
#navi(../)
RIGHT:Posted by &author(aterai); at 2008-06-30
*FileのSystemIconを取得する [#k9549786]
ファイル、ディレクトリなどのSystemIconを取得します。

//-&jnlp;
-&jar;
-&zip;

//#screenshot
#ref(http://lh4.ggpht.com/_9Z4BYR88imo/TQTUG6tI4SI/AAAAAAAAAlg/bci1geT80EM/s800/SystemIcon.png)

**サンプルコード [#b874c8ce]
#code{{
smallLabel.setIcon(FileSystemView.getFileSystemView().getSystemIcon(file));
}}
#code{{
largeLabel.setIcon(new ImageIcon(ShellFolder.getShellFolder(file).getIcon(true)));
}}

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

- 16x16
-- FileSystemView#getSystemIcon(File f) で小さいアイコンを取得

- 32x32
-- ShellFolder.getShellFolder(file).getIcon(true) で大きいアイコンを取得
-- 「sun.awt.shell.ShellFolder は Sun が所有する API であり、今後のリリースで削除される可能性があります。」と警告される

**参考リンク [#k6280a75]
-[http://blog.codebeach.com/2008/02/get-file-type-icon-with-java.html Code Beach: Get the File Type Icon with Java]

**コメント [#w80dd0d3]
#comment