0

我想在事件发生时在屏幕上添加图像。在我的情况下,这将来自一个被点击的按钮。我试图自己解决这个问题,但图像没有出现。我不知道出了什么问题。

我的代码:

JButton button2 = new JButton("+");
button2.addActionListener(new ActionListener() { 
    public void actionPerformed(ActionEvent e)
    {
        //Execute when button is pressed
        System.out.println("button #2 working");
        label2 = new JLabel(new ImageIcon(this.getClass().getResource("50.png")));      
        label2.setLocation(10, 60);
        label2.setSize(300, 532);
        add(label2);
        //? Not working 
    }
}); 

button2.setSize(50, 40); 
button2.setFont(new Font("Arial", 1, 20));
button2.setLocation(110, 592);
button2.setBackground(Color.ORANGE);
content.add(button2);
4

1 回答 1

0

我实际上已经做了一些类似于你想要实现的事情。但是,我通过使用不同的方法来实现这一点。例如,您可以创建一个扩展 JPanel 的类 MyPanel 并覆盖 paintComponent() 方法。在 paintComponent() 方法中,您可以调用 g.drawImage(yourImage, 0, 0,null); 将图像添加到您的面板。然后就是创建一个 MyPanel 实例并将其添加到 GUI 上任何您想要的位置。此外,不要忘记在单击按钮后调用 repaint() ,否则您将看不到更改。

于 2013-11-04T01:37:27.337 回答