1、import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;/图片的拖动效果public class aa extends JFrame JLabel jlPic; /图片,用于拖动public aa() super(“图片的拖动效果“); /调用父类构造函数Icon image=new ImageIcon(this.getClass().getResource(“6.GIF“); /实例化图标jlPic = new JLabel(image); /实例化带图片的标签getC
2、ontentPane().add(jlPic); /增加标签到容器上DragPicListener listener=new DragPicListener(); /鼠标事件处理jlPic.addMouseListener(listener); /增加标签的事件处理jlPic.addMouseMotionListener(listener); setSize(300,200); /设置窗口尺寸setVisible(true); /设置窗口为可视setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /关闭窗口时退出程序class DragPicListe
3、ner implements MouseInputListener /鼠标事件处理Point p=new Point(0,0); /坐标点public void mouseMoved(MouseEvent e)public void mouseDragged(MouseEvent e)Point newP=SwingUtilities.convertPoint(jlPic,e.getPoint(),jlPic.getParent(); /转换坐标系统jlPic.setLocation(jlPic.getX()+(newP.x-p.x),jlPic.getY()+(newP.y-p.y); /设
4、置标签的新位置p=newP; /更改坐标点public void mouseReleased(MouseEvent e)public void mouseEntered(MouseEvent e)public void mouseExited(MouseEvent e)public void mouseClicked(MouseEvent e)public void mousePressed(MouseEvent e)p=SwingUtilities.convertPoint(jlPic,e.getPoint(),jlPic.getParent(); /得到当前坐标点 public static void main(String args) new aa();