JAVA SWING 无边框(无TITLE)窗体如何实现窗体移动

如题,当鼠标在某一区域(比如一个LABEL上)按下(一个mousedowm事件),然后拖动鼠标,能使当前窗体移动。就和鼠标在TITLE上按下并且拖动时一样的效果。... 如题,当鼠标在某一区域(比如一个LABEL上)按下(一个mousedowm事件),然后拖动鼠标,能使当前窗体移动。就和鼠标在TITLE上按下并且拖动时一样的效果。 展开
 我来答
匿名用户
2013-08-24
展开全部
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;

import javax.swing.JFrame;
public class test extends JFrame{
private int xx, yy;
private boolean isDraging = false;
public test(){
setUndecorated(true); // 没有标题栏
setSize(200, 200);
setVisible(true);
this.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {

isDraging = true;

xx = e.getX();

yy = e.getY();
}

public void mouseReleased(MouseEvent e) {

isDraging = false;
}
});
this.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseDragged(MouseEvent e) {

if (isDraging) {

int left = getLocation().x;

int top = getLocation().y;

setLocation(left + e.getX() - xx, top + e.getY() - yy);

}
}
});
}
public static void main(String[] args) {
test t =new test();
t.setDefaultCloseOperation(3);
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式