首页 > 解决方案 > 面板消失后 JPanel 下的 ImageIcon 未显示

问题描述

我正在为反向抽奖编写代码,其中一旦按下按钮,该面板就会消失。我想在面板后面放一个图像以慢慢显示,因为面板设置为不可见,但由于某种原因它没有显示,有人可以帮忙吗?(请原谅所有注释掉的代码,我已经对此进行了很多故障排除,但我还没有把它全部清理干净。)

我尝试将 frame.setContentPane 更改为 frame.add 但这会将图像放在面板的顶部,并且在单击面板后,图像就会消失。

public static void createAndShowGUI(){


        JFrame frame = new JFrame("Raffle");
        RaffleBoard myDemo = new RaffleBoard();
        JLabel label = null;
        frame.setBackground(Color.BLUE);

        try {
            label = new JLabel(new ImageIcon(ImageIO.read(new File("logo.png"))));
        } catch (IOException e) {
            e.printStackTrace();
        }

        frame.add(label);
        label.setLocation(0,0);
        frame.pack();


        try {
          frame.setContentPane(myDemo.createContentPane());
        }
        catch(IOException e) {
          e.printStackTrace();
        }




        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setResizable(false);
        frame.setSize(myDemo.getWidth(),myDemo.getHeight());
        frame.setVisible(true);
    }

标签: javaimageswingjlabelimageicon

解决方案


推荐阅读