Установить значок приложения Java на рабочем столе по умолчанию для всех подкадров? - PullRequest
2 голосов
/ 28 декабря 2011

Мне удалось заменить кофейную чашку java в углу своей собственной иконкой, однако мое приложение имеет около 13 кадров, и когда я вручную вызываю иконку, как на своем мэйнфрейме, он говорит, что не может найти символ getframe ().

Есть идеи, как установить значок по умолчанию для значка, который есть в основном кадре?Я использовал этот код, чтобы применить свою иконку к основному кадру:

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

Ответы [ 3 ]

3 голосов
/ 28 декабря 2011

«подкадры» должны быть JDialog, а не JFrame. Диалог будет наследовать значок автоматически, если вы укажете рамку в качестве родителя диалога в конструкторе.

1 голос
/ 28 декабря 2011

Вы можете попробовать что-то вроде этого:

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);
        }
1 голос
/ 28 декабря 2011
  1. , поскольку я не знаю, как можно легко изменить Java Cup Icon для контейнеров, построенных из Java Desktop Aplication

  2. Java Desktop Aplication - это старая платформа, основанная на Swing, номногие методы защищены и недоступны извне

  3. , поскольку (на первый взгляд) выглядит очень удобно, просто перетаскивая pre_defined jComponents из палитры, но изменить часть основных методов нелегкоjob,

  4. Java Desktop Aplication является старой платформой и устарела в течение нескольких лет

  5. используйте стандартный Swing JComponent, тогда вы не сможете найти какой-либопределы

...