解决方案 »

  1.   

    自己从JButton继承一个类,然后重写paint方法呗。
      

  2.   

    这我当然知道,不过这仅仅是在按钮方框中添加了一个Oval,
      

  3.   


    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.Insets;
    import java.io.IOException;
    import javax.imageio.ImageIO;
    import javax.swing.ImageIcon;
    import javax.swing.JButton;import cn.lin.images.getImg;public class MyJButton extends JButton {
    /**
     * 
     */
    private static final long serialVersionUID = 2057428357783615691L;
    private String text =""; public MyJButton(Image moren,Image press,Image click) {
    // TODO 自动生成的构造函数存根
    super.paint(getGraphics());
    setMargin(new Insets(0, 0, 0, 0));// 设置边距
    setContentAreaFilled(false);// 不绘制按钮区域
    setBorderPainted(false);// 不绘制边框
    setIcon(new ImageIcon(moren));// 设置默认图片
    setRolloverIcon(new ImageIcon(press));// 设置鼠标经过图片
    setPressedIcon(new ImageIcon(click));// 设置鼠标按下图片
    setBorder(null);
    } @Override
    public void setText(String text) {
    // TODO 自动生成的方法存根
    this.text = text;
    } public void paint(Graphics g) {
    // TODO 自动生成的方法存根
    super.paint(g);
    // g.drawOval(10, 10, 20, 20);
    g.setColor(Color.BLACK);
    g.setFont(new Font("迷你简黄草", Font.PLAIN, 22));
    g.drawString(text, 22, 50);
    }
    }这是一个自写的按钮类,你可以用一下、
      

  4.   

    继承楼上的Mybutton实现的一个关闭按钮
    import java.awt.Image;
    import java.io.IOException;import javax.imageio.ImageIO;import cn.lin.images.getImg;public class GameExit extends MyJButton {
    /**
     * 
     */
    private static final long serialVersionUID = -6786787211433201501L;
    public GameExit() throws IOException {
    // TODO 自动生成的构造函数存根
    super(ImageIO.read(getImg.class.getResource("exit/exit.png")), ImageIO
    .read(getImg.class.getResource("exit/exit_move.png")), ImageIO
    .read(getImg.class.getResource("exit/exit_click.png")));
    }
    }
      

  5.   

    大家说的都是MyButton extends JButton 然后在按钮上画上图形,这没什么难度吧。
    但是我题目的要求是
    JButton如何制作一个圆形按钮,然后跟其他按钮具有以下关系:相切、相交、分离,
    然后生产一个由这些按钮生成的一个圆环,所有按钮都相切。
    按钮和另一个按钮有一个方法判定他两是否相切,一个方法实现他两相切并展示。
      

  6.   


    判断两个圆形相交、相切很难吗?你只要有两个圆的圆心坐标和半径就可以了啊,只是初中的数学题啊。
    只需判断((x1-x2)^2 + (y1-y2)^2)^(1/2)    和   r1+r2  的大小就行了。
      

  7.   


    判断两个圆形相交、相切很难吗?你只要有两个圆的圆心坐标和半径就可以了啊,只是初中的数学题啊。
    只需判断((x1-x2)^2 + (y1-y2)^2)^(1/2)    和   r1+r2  的大小就行了。
    顶一下
      

  8.   


    判断两个圆形相交、相切很难吗?你只要有两个圆的圆心坐标和半径就可以了啊,只是初中的数学题啊。
    只需判断((x1-x2)^2 + (y1-y2)^2)^(1/2)    和   r1+r2  的大小就行了。

    好吧,如果你能在java中作出按钮(如图所示),没有JButton那个外面的方框。分全给你。
      

  9.   


    判断两个圆形相交、相切很难吗?你只要有两个圆的圆心坐标和半径就可以了啊,只是初中的数学题啊。
    只需判断((x1-x2)^2 + (y1-y2)^2)^(1/2)    和   r1+r2  的大小就行了。

    好吧,如果你能在java中作出按钮(如图所示),没有JButton那个外面的方框。分全给你。
    你如果做成多个按钮,那肯定是做不到的,但是你可以做成一个组件啊。鼠标点击在不同的区域(你可以通过计算是不是在圆圈内),显示不同的效果,执行不同的方法,对于用户看起来就像是很多个这样的按钮似的,对于java来说其实就是一个组件而已。