首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

几行代码搞定Java桌面应用程序界面的拖动有关问题

2012-12-18 
几行代码搞定Java桌面应用程序界面的拖动问题?????有时我们想让鼠标点击Java桌面应用程序界面的任何地方都

几行代码搞定Java桌面应用程序界面的拖动问题

?????有时我们想让鼠标点击Java桌面应用程序界面的任何地方都能实现拖动功能,而不止限于标题栏,下面几行代码就能实现之,其实很简单,只需将当前界面的坐标加上鼠标移动的距离即可.

?

???? 首先写一个类,继承MouseListener, MouseMotionListener,其他方法体里面不需要写代码,只需在mousePressed()和mouseDragged()方法里写些代码即可(省略了部分代码):

?

int startX ,startY;??Component c;public DraggingListener(Component c) {?this.c = c;?}public void mousePressed(MouseEvent e) {startX = e.getX();//开始移动时界面左上角X坐标startY = e.getY();//开始移动时界面左上角Y坐标}public void mouseDragged(MouseEvent e) {Point p = e.getPoint();int addX = p.x - startX;//X轴上移动的距离int addY = p.y - startY;//X轴上移动的距离Point old = c.getLocation();c.setLocation(old.x + addX, old.y + addY);}

?

然后为你的主框架注册事件监听器:

?

?

DraggingListener listener = new DraggingListener(this);this.addMouseListener(listener);this.addMouseMotionListener(listener);

?

?

OVER!!

?

?

热点排行