设置鼠标移进后以及鼠标点击后的JButton的背景图片

来源:互联网 发布:matlab编程入门教程pdf 编辑:程序博客网 时间:2024/06/05 22:00

有两种方式实现,第一种是直接采用JButton自带的方法,推荐使用这种方式,因为代码少,具体代码如下:

 enter.setRolloverIcon(new ImageIcon("E:\\javaSE代码\\TimeManager\\asset\\buttonmousein.jpg"));//设置鼠标进来之后JButton的背景图片 enter.setPressedIcon(new ImageIcon("E:\\javaSE代码\\TimeManager\\asset\\buttonclicked.jpg"));//设置鼠标点击之后JButton的背景图片

另一种方式就是实现MouseListener接口了,具体代码如下:

 enter.addMouseListener(new MouseListener() {@Overridepublic void mouseReleased(MouseEvent e) {enter.setIcon(new ImageIcon("E:\\javaSE代码\\TimeManager\\asset\\buttonnormal.jpg"));//这个方法和mousePressed方法配套使用,当鼠标释放时,JButton应当显示的背景图片}@Overridepublic void mousePressed(MouseEvent e) {enter.setIcon(new ImageIcon("E:\\javaSE代码\\TimeManager\\asset\\buttonclicked.jpg"));//当鼠标长时间按在JButton上时,JButton应该显示的背景图片。实际上,完全可以代替mouseClicked方法}@Overridepublic void mouseExited(MouseEvent e) {enter.setIcon(new ImageIcon("E:\\javaSE代码\\TimeManager\\asset\\buttonnormal.jpg"));//当鼠标移出时,JButton应当显示的背景图片}@Overridepublic void mouseEntered(MouseEvent e) {enter.setIcon(new ImageIcon("E:\\javaSE代码\\TimeManager\\asset\\buttonmousein.jpg"));//当鼠标移进时,JButton应当显示的背景图片}@Overridepublic void mouseClicked(MouseEvent e) {//enter.setIcon(new ImageIcon("E:\\javaSE代码\\TimeManager\\asset\\buttonclicked.jpg"));//当JButton被单击时,JButton应当显示的背景图片。//当这个方法和mousePressed方法被同时重写时,会出现一些不好的效果,各位可以自行实验。//建议只重写mousePressed方法就行,完全能代替mouseClicked方法的效果}});


0 0