• 追加された行はこの色です。
  • 削除された行はこの色です。
TITLE:JFrameのアイコンを非表示
#navi(../)
#tags(JFrame, Icon)
RIGHT:Posted by &author(aterai); at 2006-04-17
* JFrameのアイコンを非表示 [#fd5a755d]
``JFrame``などのタイトルバーにあるアイコンを非表示にします。
`JFrame`などのタイトルバーにあるアイコンを非表示にします。

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

#ref(https://lh6.googleusercontent.com/_9Z4BYR88imo/TQTK49Ua_nI/AAAAAAAAAWs/Ipb_maWCOgY/s800/DisableDefaultIcon.png)

** サンプルコード [#s7596510]
#code(link){{
JFrame frame = new JFrame("test");
MainPanel panel = new MainPanel();
URL url = panel.getClass().getResource("16x16transparent.png");
frame.setIconImage(Toolkit.getDefaultToolkit().createImage(url));
}}

** 解説 [#p9be32d7]
``JFrame#setIconImage(Image)``メソッドを使用して、タイトルバーなどにあるフレームのアイコンを変更しています。
`JFrame#setIconImage(Image)`メソッドを使用して、タイトルバーなどにあるフレームのアイコンを変更しています。

- ``null``
- `null`
-- デフォルトのアイコンが表示
- ``new ImageIcon("").getImage();``
-- ``JDK 1.5``では、アイコン非表示、``JDK 1.6``からは、デフォルトのアイコンが表示される
-- ``Web Start``で起動した場合、``AccessControlException: access denied ("java.io.FilePermission" "" "read")``が発生
- ``new BufferedImage(1,1,BufferedImage.TYPE_INT_ARGB);``
-- サイズが``1x1``で、透明な``Image``を表示
- `new ImageIcon("").getImage();`
-- `JDK 1.5`では、アイコン非表示、`JDK 1.6`からは、デフォルトのアイコンが表示される
-- `Web Start`で起動した場合、`AccessControlException: access denied ("java.io.FilePermission" "" "read")`が発生
- `new BufferedImage(1,1,BufferedImage.TYPE_INT_ARGB);`
-- サイズが`1x1`で、透明な`Image`を表示
-- タイトルバーの左端をクリックするとタイトルメニューは表示することができる
- ``toolkit.createImage(url_16x16transparent);``
-- 透過色で塗りつぶした``16x16``の``PNG``画像をアイコンとして使用
- `toolkit.createImage(url_16x16transparent);`
-- 透過色で塗りつぶした`16x16`の`PNG`画像をアイコンとして使用
-- タイトルバーの左端をクリックするとタイトルメニューは表示することができる

** 参考リンク [#b14cc1e2]
- [https://forums.oracle.com/message/5832634 Java Default Icon | Oracle Forums]
- [https://forums.oracle.com/thread/1381127 Swing - Java Default Icon]

** コメント [#hdfa73f8]
- thank u -- [[mid]] &new{2006-06-15 (木) 17:15:20};
-- np -- [[aterai]] &new{2009-02-05 (木) 18:10:07};
- スクリーンショットなどを更新 -- [[aterai]] &new{2009-02-05 (木) 18:15:32};

#comment