2016-05-31 3 views
0

if文に付随するラベルに十字を表示するために、次のものを使用しています。プリロードされたアイコンの使用

JLabel.setIcon(new ImageIcon(path + "Resource/cross.png"));

アイコンを毎回ロードする代わりに、プロジェクトにインポートしてそこから呼び出す方が好きです。私はそれをインポートする方法を知っていますが、上記のコード行をインポートしたアイコンを指すように変更するにはどうすればいいですか?

答えて

0

あなたは正直今どこでも

JLabel.setIcon(UtilitClass.getImageIcon(path + "Resource/cross.png)); 
+0

アイコンにアクセスすることができます(ユーティリティクラスで)静的ローダMethodeのを作成し、そこ

private static Map<String, Icon> lookUpMap = new HashMap<>(); public static Icon getImageIcon(String res){ Icon icon = lookUpMap.get(res); if(icon = null){ icon = new ImageIcon(res); lookUpMap.put(res, icon); } return icon; } 

それを保存することができます:あなたのアプリは一種の大きい場合ファクトリクラス内でImageアクセスをラップしたくない場合は、イメージがアプリ内にあることを保証することはできません。あなたがテストしたい、あるいは異なるユーティリティクラスを使いたいときに役立ちます –

関連する問題