📄 framemove.java
字号:
package bin;
import java.awt.Component;
import java.awt.Point;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
public class FrameMove extends MouseAdapter implements MouseMotionListener {
private Point offset;
private Component host;
public synchronized void install(Component comp)
{
uninstall(); //
host = comp;
host.addMouseListener(this);
host.addMouseMotionListener(this);
}
public synchronized void uninstall()
{
if (host != null) {
host.removeMouseListener(this);
host.removeMouseMotionListener(this);
host = null;
}
}
public void mousePressed(MouseEvent e)
{
if (e.getSource() == host) offset = e.getPoint();//当鼠标按下时,判断事件源,并得到Point
}
public void mouseDragged(MouseEvent e)
{
if (e.getSource() != host) return;
final int x = host.getX();
final int y = host.getY();
final Point lastAt = e.getPoint(); //得到当前点鼠标位置
host.setLocation(x + lastAt.x - offset.x, y + lastAt.y - offset.y);
} //设置窗体的位置
public void mouseMoved(MouseEvent e)
{
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -