现在一些手游可以在电脑模拟器实现操作,有一些无聊的副本手动去操作太浪费时间,网上的按键精灵功能太单一,按键时间固定又容易被识别,闲来无事写了一个java脚本实现按键时间周期设置,以及多个点的点击。
在使用按键的时候java的窗口自动切换到后台,按键无法响应,为了实现窗口后台响应我这里需要导入一个第三方jar包jintellitype,具体代码如下
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.MouseInfo;
import java.awt.Point;
import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import com.melloware.jintellitype.HotkeyListener;
import com.melloware.jintellitype.JIntellitype;
/**
* 这是窗口类,用来设置窗口
*
* @author Stanley
*
*/
public class KeyFrame extends JFrame implements Runnable {
/**
*
*/
private static final long serialVersionUID = 1L;
// 初始提示
private JLabel startLabel = new JLabel("鼠标初始位置");
// 初始位置
private JTextArea startArea = new JTextArea();
// 第二次提示
private JLabel secLabel = new JLabel("鼠标第二次点击");
// 第二次确认位置
private JTextArea secArea = new JTextArea();
// 第三次提示
private JLabel endLabel = new JLabel("鼠标最终位置");
// 第三次确认位置
private JTextArea endArea = new JTextArea();
// 输入时间范围
private JLabel timeLabel = new JLabel("请输入每个周期时间范围(s)");
private JLabel space = new JLabel("");
private JLabel minTimeLabel = new JLabel("请输入最小时间(s)");
private JLabel maxTimeLabel = new JLabel("请输入最大时间(s)");
private JLabel timeIntervalLabel = new JLabel("两次点击时间间隔(s)");
private JLabel timesLabel = new JLabel("请输入周期次数");
private JLabel lessTimes = new JLabel("剩余次数");
// 最小时间
private JTextField minTimeTextField = new JTextField();
// 最大时间
private JTextField maxTimeTextField = new JTextField();
// 时间间隔
private