Java - JFrame не отображает ImageIcon - PullRequest
       9

Java - JFrame не отображает ImageIcon

0 голосов
/ 11 сентября 2018
public Vue(String title) {
    super(title);



    this.addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent e) {
            System.exit(0);
        }
    });

    this.getContentPane().setLayout(new GridLayout(4, 1));
    JPanel p1 = createPanel1();
    this.getContentPane().add(p1);
    JPanel p2bis = createPanel2bis();
    this.getContentPane().add(p2bis);
    JPanel p3 = createPanel3();
    this.getContentPane().add(p3);




    this.setJMenuBar(createMenuBar());

    this.setPreferredSize(new Dimension(750,400));
    this.pack();
    this.setVisible(true);


    ImageIcon image = new ImageIcon(getClass().getResource("voile.png"));
    this.setIconImage(image.getImage());
    System.out.println(image.getDescription());

}

Привет,

Я потратил время, чтобы найти решение для отображения моего изображения в виде изображения значка JFrame ... И перепробовал много вещей типа

ImageIcon image = new ImageIcon(Constants.LOGO_ABSOLUTE_PATH);
this.setIconImage(image.getImage());
System.out.println(image.getDescription());

Я поместил файл "voile.png" повсюду в моих каталогах: root, src, bin и внутри пакетов bin и src. Я также попробовал с онлайн-логотипом и его URI.

Однако на самом деле это не работает. Кто-нибудь может мне помочь?

Я использую Eclipse Oxygen и Windows 10

PS: System.out.println (image.getDescription ()); всегда показывая путь, где находится мое изображение (в любом случае, я положил его везде)

1 Ответ

0 голосов
/ 12 сентября 2018

ImageIcon не поддерживает прозрачность PNG. Мне пришлось создать пустое изображение JPG и поместить логотип внутри. Мой окончательный код

ImageIcon image = new ImageIcon(Constants.LOGO);
this.setIconImage(image.getImage());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...