Java设计模式之外观模式示例详解
333
2022-07-29
目录前言实现代码效果图
前言
疫情,需要远程办公,为了更好的远程办(划)公(水)。而我们公司因为没有想到会有大批量的远程办公,从而导致连接的人过多,需要抢占连接才能登录,而且好不容易抢到了,去上个厕所,然后就长时间未操作断开了,防止这种事情的发生,特地写了这个脚本
实现代码
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
/**
* Java实现鼠标随机移动
*/
public class Mouhttp://seController implements Runnable {
private Robot robot;
private boolean isStop = false;
public MouseController() {
try {
Controllehttp://rFrame frame = new ControllerFrame("Prevent Locking");
frame.setVisible(true);
robot = new Robot();
} catch (AWTException e) {
e.printStackTrace();
}
}
@Override
public void run() {
int x;
int y;
Random random = new Random();
while (!isStop) {
//随机生成坐标。
x = random.nextInt(1000);
y = random.nextInt(1000);
//开始移动
robot.mouseMove(x, y);
//每5秒移动一次
robot.delay(6000);
}
}
/**
* GUI Frame 生成一个button,控制程序
*
* @author max
*/
private class ControllerFrame extends JFrame {
private static final long serialVersionUID = 1L;
private JButton close = new JButton("close");
public ControllerFrame(String title) {
this();
setTitle(title);
}
public ControllerFrame() {
setLayout(new FlowLayout(FlowLayout.LEADING));
setSize(100, 100);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
Dimension preferredSize = new Dimension(100, 60);
Font font = new Font("", 1, 14);
//设置button 大小,文字等属性
close.setPreferredSize(preferredSize);
close.setFont(font);
close.setBorderPainted(true);
close.setFocusable(false);
add(close);
//点击button后,程序终止。
close.addActionListener(new ActionListener()JeOegJxXk {
@Override
public void actionPerformed(ActionEvent e) {
isStop = true;
dispose();
}
});
}
}
public static void main(String[] args) {
MouseController m = new MouseController();
m.run();
}
}
效果图
运行后会弹出一个框,然后你就切换到会过期的应用窗口就行了
如果不想让鼠标继续动了那么点击close 就行了
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~