• title: JFrameのアイコンを非表示 tags: [JFrame, Icon] author: aterai pubdate: 2006-04-17T12:43:57+09:00 description: JFrameなどのタイトルバーにあるアイコンを非表示にします。

概要

JFrameなどのタイトルバーにあるアイコンを非表示にします。

サンプルコード

JFrame frame = new JFrame("test");
MainPanel panel = new MainPanel();
URL url = panel.getClass().getResource("16x16transparent.png");
frame.setIconImage(Toolkit.getDefaultToolkit().createImage(url));
View in GitHub: Java, Kotlin

解説

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

  • 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を表示
    • タイトルバーの左端をクリックするとタイトルメニューは表示することができる
  • toolkit.createImage(url_16x16transparent);
    • 透過色で塗りつぶした16x16PNG画像をアイコンとして使用
    • タイトルバーの左端をクリックするとタイトルメニューは表示することができる

参考リンク

コメント