在Java Swing中,有一种快速方法可以更改按下任何按钮的图标,而无需为每个按钮单独编写按钮。像
这样的东西event.getSource().setIcon( icon );
但是这提出了一个"找不到符号"错误。有没有办法做到这一点?
提前致谢
答案 0 :(得分:2)
是的, 会有效,但要明白getSource()
会返回一个对象,因此您需要强制转换 。
如,
((JButton) event.getSource()).setIcon(icon);
如果您正在使用“交换机”类型的侦听器,其中侦听器用于许多不同的项目(不是真的建议您这样做),那么您需要先检查源的类型强制转换以避免出现异常。
如果这不起作用,您将需要更加具体地说“不起作用”(对我们来说不是一个非常有用的短语)。