Reputation: 41
I'm doing a board game project and I'm representing cells by Jbuttons. I made mouseLitener to all the buttons. My question is how to change the icon of the Jbutton when it is clicked ?
Upvotes: 4
Views: 1601
Reputation: 205785
As an alternative, also consider setText()
using unicode glyphs, illustrated here.
Upvotes: 4
Reputation: 33505
yourButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
yourButton.setIcon(new ImageIcon("yourImage"));
}
});
ActionListener is called when you click on the JButton. This way is used most frequently.
Upvotes: 5
Reputation: 109813
I'm doing a board game project and I'm representing cells by Jbuttons.
use JToggleButton for game based on buttons array and mouse events, rather than JButton
use ButtonModel instead of any XxxListener
JButton
and JToggleButton
has implemented these methods in the API directly
.
setIcon(Icon i);
setRolloverIcon(Icon i);
setPressedIcon(Icon i);
setDisabledIcon(Icon i);
Upvotes: 7