为所有子框架设置默认的Java桌面应用程序图标?

时间:2011-12-28 19:10:11

标签: java swing netbeans icons desktop-application

我已经设法用我自己的图标替换角落里的java咖啡杯,但是我的应用程序有大约13帧,当我手动调用我在大型机上执行的图标时,它说无法找到符号getframe()

知道如何将默认图标设置为主框架的图标吗?我使用此代码将我的图标应用于主框架:

URL url = ClassLoader.getSystemResource("calculatormedii/resources/CMed1.png");
        Toolkit kit = Toolkit.getDefaultToolkit();
        Image img = kit.createImage(url);
        getFrame().setIconImage(img);

3 个答案:

答案 0 :(得分:3)

“子帧”应该是JDialog而不是JFrame。只要您将框架指定为构造函数中对话框的父级,对话框将自动继承该图标。

答案 1 :(得分:1)

  1. 因为我知道不可能轻松更改从Java桌面应用程序构建的容器的Java Cup Icon

  2. Java桌面应用程序是基于Swing的旧框架,但许多方法都受到保护,无法从外部访问

  3. 因为(乍看之下)看起来非常舒适从调色板中删除pre_defined jComponents,但改变部分基本方法并不容易,

  4. Java桌面应用程序是旧框架,几年后折旧

  5. 使用标准Swing JComponent,然后找不到任何限制

答案 2 :(得分:1)

您可以尝试这样的事情:

URL url = ClassLoader.getSystemResource("calculatormedii/resources/CMed1.png");
        Toolkit kit = Toolkit.getDefaultToolkit();
        Image img = kit.createImage(url);

        Frame[] frames = JFrame.getFrames();
        for (int i = 0; i < frames.length; i++) {
            frames[i].setIconImage(img);
        }