首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过单击另一个按钮在两个按钮上交换图像

通过单击另一个按钮在两个按钮上交换图像
EN

Stack Overflow用户
提问于 2014-09-18 19:34:55
回答 1查看 1.4K关注 0票数 0

我有两个按钮,每一个图像,我希望通过点击另一个(第三)按钮,前面的2个按钮的图像被交换。我试过了,但我遇到了一些错误。请帮帮忙。我的代码是:

代码语言:javascript
复制
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class SwapImage implements ActionListener
{
JButton b1;
JButton b2;
JButton b3;
ImageIcon bgi1;
ImageIcon bgi2;
ImageIcon bgi3=new ImageIcon();

SwapImage()
{
JFrame f=new JFrame("Swap Image");

bgi1=new ImageIcon(getClass().getResource("a.png"));
bgi2=new ImageIcon(getClass().getResource("b.png"));

b1=new JButton(bgi1);
b1.setBounds(80,80,100,100);
//b1.addActionListener(this);

b2=new JButton(bgi2);
b2.setBounds(200,80,100,100);
//b2.addActionListener(this);

b3=new JButton("SWAP");
b3.setBounds(170,230,100,100);
b3.addActionListener(this);

f.add(b1);
f.add(b2);
f.add(b3);
f.setSize(400,400);
f.setLayout(null);
f.setVisible(true);

}

public void actionPerformed(ActionEvent e)
{

bgi3=bgi1;
bgi1=bgi2;
bgi2=bgi3;
b1=new JButton(bgi1);
b2=new JButton(bgi2);

}


public static void main(String s[])
{
new SwapImage();
}

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-18 19:37:08

在您的actionPerformed中,不要打电话:

代码语言:javascript
复制
b1=new JButton(bgi1);
b2=new JButton(bgi2);

相反,只需设置图标:

代码语言:javascript
复制
b1.setIcon(bgi1);
b2.setIcon(bgi2);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25920947

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档