解决方案 »

  1.   

    用JLabel来代替JButton实现按钮的功能就好了
      

  2.   

    JLabel可以实现监听事件的功能吗?
      

  3.   

    可以考虑利用Image 对象先加载图片,然后再把图片传入按钮中,今天晚了,明天给楼主贴代码参考下
      

  4.   

    写一个类继承字JButton然后重写paint方法推荐一本书《Java动画、图形和极富客户端效果开发》,我觉得中文翻译不太好,还是看英文的吧
    http://download.csdn.net/detail/alan19931103/7213155
      

  5.   

    用图片就好了!http://www.html5tricks.com/css3-checkbox-3d-buttton.html参考参考!
      

  6.   

    额额...对不起哦,楼主...昨晚没看代码,我今天倒回去看我的代码时发现我的那个是利用鼠标事件监听代替了按钮的功能...代码还是贴给你,看对你有没有帮助
    //这是初始化一个图片对象,并且拿到图片
    public static Image renwuimage = 
           new ImageIcon("images/cover_button_start_up.png").getImage();//这是把图片放入双缓冲画布里
    this.memoGraphice.drawImage(renwuimage, 640, 100, null);
    //这是点击后的效果,new Tset2()是一个新的窗口
    if(MyMouseEvent.getMouseEvent(e.getX(), e.getY(), 640, 100)){ 
    this.dispose();
    isRun = false;
    new Test2();
    }else{

    }上述是做出的点击按钮的效果,然后这其中我做了一个工具类
    我把工具类的代码也发出来给你看看
    public class MyMouseEvent {
    /**
     * 
     * @Title: getMouseEvent
     * @Description: TODO(传入鼠标X,Y坐标以及图片的X,Y坐标 以确定鼠标事件的范围)
     * @param @param mouseX 鼠标的X坐标
     * @param @param mouseY 鼠标的Y坐标
     * @param @param imageX 图片的X坐标
     * @param @param imageY 图片的Y坐标
     * @param @return flag 鼠标是否存在此区?
     * @return boolean 返回类型
     * @throws
     */
    public static boolean getMouseEvent(int mouseX, int mouseY, int imageX,
    int imageY) {
    boolean flag;

    if (mouseX >= imageX && mouseX <= imageX + 78 && mouseY >= imageY
    && mouseY <= imageY + 44) {
    flag = true;
    } else {
    flag = false;
    }
    return flag;
    }
    }
    嗯,就是这样了,希望能给你点帮助和启发!
      

  7.   

    谢谢啦,代码很有帮助,Thank you啦