0

これは少し奇妙に思えるかもしれませんが、私にはこの要件があり、これが可能かどうか知りたいです。

ファイル(プログラム)を選択するJavaスイングアプリケーションがあり、このプログラムがリストに追加されます。リストが完成したら、プログラムのリストを実行します (これはスタートアップ マネージャーのようなものです)。

私がやりたいことは、どういうわけか、選択したファイルを取得して、UI に画像として表示することです。pdf、doc、txt などの一般的なファイルの場合、これは簡単です。タイプごとに一般的な画像を用意するだけです。しかし、regedit.exe または msconfig.exe を実行したいとしましょう。そのアイコンを取得できるようにしたいと考えています (下の図)。

ここに画像の説明を入力

これを行う方法を知っている人はいますか?

ありがとう

4

2 に答える 2

5

FileSystemView.getSystemIcon(File)を見てください。

少し制限があります (1 つのサイズしか得られないという点で) が、組み込まれており、追加のライブラリや JNA や JNI さえも必要としません...

File f = new File(...);
Icon icon = FileSystemView.getFileSystemView().getSystemIcon(f);
于 2012-09-26T05:58:10.823 に答える
0

ネイティブ アイコンが必要な場合は、JNI が必要です。Java には、さまざまなサイズのネイティブ アイコンを取得するためのデフォルト API がありません。Windows と Linux の出発点は次のとおりです。

正確なネイティブ アイコンが必要ない場合は、ファイルの MIME タイプを取得して、自分でアイコンを設定できます。

于 2012-09-26T08:38:55.400 に答える