想设计自定义的Button,像VB里可以接受点击事件的Label控件一样的Button应该怎么做?

解决方案 »

  1.   

    package app.inspec_client.gui;import java.awt.Font;import javax.swing.Action;
    import javax.swing.Icon;
    import javax.swing.JButton;
    import javax.swing.SwingConstants;public class MyButton extends JButton { /**
     * 
     */
    private static final long serialVersionUID = 1L; public MyButton(Action a) {
    super(a);
    setProperties();
    } public MyButton(Icon icon) {
    super(icon);
    setProperties(); } public MyButton(String text, Icon icon) {
    super(text, icon);
    setProperties();
    } public MyButton(String text) {
    super(text);
    setProperties();
    } private void setProperties() {
    this.setToolTipText("执行" + this.getText() + "操作");
    setOpaque(false);
    this.setFont(new Font("宋体", 0, 12));
    this.setIconTextGap(1);
    this.setBorderPainted(false);
    this.setFocusable(false); // setBorder( BorderFactory.createRaisedBevelBorder());
    this.setVerticalTextPosition(SwingConstants.BOTTOM);
    setHorizontalTextPosition(SwingConstants.CENTER); }
    }产生按钮
    MyButton bt_check=new MyButton(new AbstractAction("审核", icon_add){});
      

  2.   

    似乎这个方法还没有摆脱JButton的外观。设置Icon后,Icon旁还是会出现JButton原来的按钮外表,我需要的是完全不同的Button,不知还有什么高招没
      

  3.   

    .......好似是JSP的东东,不是我要的
      

  4.   

    你可以用Netbeans IDE 里面可以完成你的BUTTON属性了!
      

  5.   

    1、写一个继承自JButton的子类,复写paintComponent方法,自己画出一个满足要求的按钮来
    2、使用装饰器模式,对JButton外观进行一下改变
      

  6.   

    我建议你使用NetBeans6.0中文版开发! 在那里可以很方便的制作个性化的桌面系统!
    NetBeans6.0中文版下载地址是:http://bits.netbeans.org/netbeans/6.0.1/ml/nightly/latest/
      

  7.   

    要彻底改变只能自己paintComponent