托拽然后选择一个矩形区域,就是按钮所在区域,使用clearRect()
进行清空不久实现了图片的消除了吗,类似的还可以消除圆型区域。

解决方案 »

  1.   

    不需要这样,你记录鼠标的原来位置和,数据的现在的位置,
    然后repaint就可以
    你的draw方法中画出你想要的东西就可以了
      

  2.   

    托拽然后选择一个矩形区域,就是按钮所在区域,使用clearRect()
    进行清空不久实现了图片的消除了吗,类似的还可以消除圆型区域。谢谢楼上的兄弟解答。但小弟还是不大明白啊。在这个程序里,拖曳按钮drgobj时没调用clearRect()函数,只是调用了public void mouseDragged(MouseEvent e)里的else语句,但也实现擦处之目的了。何故?????????????????
    public void mouseDragged(MouseEvent e)
    {
    if (e.getComponent() == Form1)
    {
    oldX  = X;oldY = Y;
              X = e.getX();Y = e.getY();
              Form1.repaint();
              Form1.setTitle(" Dragged X ="+X + " Y="+Y);
             }
                      else
            {
    X=e.getX();Y = e.getY();
                 dragObj.setLocation(dragObj.getLocation().x+
                          (X-oriX),dragObj.getLocation().y+(Y- oriY));
            }
     }