请问Java中如何写代码实现无标题无边框的窗体能够用鼠标拖动改变窗口大小
3个回答
展开全部
this.setUndecorated(true);
实现无标题无边框的窗体。
实现鼠标事件当鼠标点击鼠标释放时各做一次记录当前窗体的位置,再根据向量加减法原则来做具体的向量 when.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseReleased(java.awt.event.MouseEvent e) {
isDragged = false;
setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
}
public void mousePressed(java.awt.event.MouseEvent e) {
tmp = new Point(e.getX(), e.getY());
isDragged = true;
setCursor(new Cursor(Cursor.MOVE_CURSOR));
}
});
when.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {
public void mouseDragged(java.awt.event.MouseEvent e) {
if(isDragged) {
loc = new Point(getLocation().x + e.getX() - tmp.x,
getLocation().y + e.getY() - tmp.y);
setLocation(loc);
}
}
});
此处的When是JLabel when = new JLabel();具体的我相信你懂的。
实现无标题无边框的窗体。
实现鼠标事件当鼠标点击鼠标释放时各做一次记录当前窗体的位置,再根据向量加减法原则来做具体的向量 when.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseReleased(java.awt.event.MouseEvent e) {
isDragged = false;
setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
}
public void mousePressed(java.awt.event.MouseEvent e) {
tmp = new Point(e.getX(), e.getY());
isDragged = true;
setCursor(new Cursor(Cursor.MOVE_CURSOR));
}
});
when.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {
public void mouseDragged(java.awt.event.MouseEvent e) {
if(isDragged) {
loc = new Point(getLocation().x + e.getX() - tmp.x,
getLocation().y + e.getY() - tmp.y);
setLocation(loc);
}
}
});
此处的When是JLabel when = new JLabel();具体的我相信你懂的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询