java 按键精灵,按键精灵编程语言
00-1010实现效果后台难点构建程序需要掌握知识窗口测试获取鼠标位置模拟鼠标点击模拟鼠标移动鼠标行为监控完整源代码及详细讲解
目录
00-1010每天刷课每十分钟点击“继续学习”,或者单机游戏中的一个重复行为使其“自动”。我们可以通过JavaFx中的Robot类来实现。
00-1010穿窗鼠标行为记录
实现效果
背景
难点
@ override public void start(Stage Stage)抛出异常{ Scene scene=new Scene(new Pane(),320,240);Stage.setTitle(密钥向导!);stage.setScene(场景);stage . show();}
搭建程序
Robot机器人=新机器人();//获取鼠标位置point 2d MP=robot . Get mouse position();system . out . println(MP);
00-10点离开
鼠标按钮。主要的
正确
鼠标按钮。副手
儿童滚轴
鼠标按钮。中间
00-1010//鼠标移动robot.mousemove (newpoint2d (800,800));
00-1010//听鼠标点击pane . seton mouse clicked(e-{ system . out . println(e . get button()));system . out . println(e . getscenex());system . out . println(e . getsceney());});//听鼠标键入pane . seton mouse pressed(e-{ });//监控鼠标释放pane . setonmousereleased(e-{ });//在按下某个键时侦听鼠标拖动pane . setonmousedragged(e-{ });
需要掌握的知识
公共类QMApp扩展应用程序{ @覆盖公共void start(Stage Stage)抛出异常{ /** *内部类,将每次鼠标的行为以及坐标记录下来*/class MyMouseEvent{ //鼠标行为鼠标按钮MB;//类型EventType et//坐标Point2D point2Dpublic我的鼠标事件(鼠标按钮MB,EventType et,point 2d point 2d){ this。MB=MB这是。点2d=点2d;} } //创建面板VBox pane=new VBox();//对齐方式pane.setAlignment(位置. TOP _ LEFT);//机器人关键对象Robot Robot=new Robot();//记录鼠标行为LinkedListMyMouseEvent list=new linked list();//开始按钮开始b=新按钮(开始);beginb.setTextFill(颜色。红色);//结束按钮结束b=新建按钮(结束);endb.setTextFill(颜色。红色);pane.getChildren().addAll (beginb,endb);//点击"开始"按钮时,鼠标行为储存进列表beginb。setonmouseclicked(m-{ pane。setonmousedragged(e-{ list。add(new my mouse event(e . get button()、e.getEventType()、new Point2D (e.getSceneX()、e . gets ceney())));});窗格。按下seton鼠标(e-{ list。add(新的我的鼠标事件(e . get button()、e.getEventType()、new Point2D (e.getSceneX()、e . gets ceney())));});窗格。setonmousereased(e-{ list。add(new my mouse event(e . get button()、e.getEventType()、new Point2D (e.getSceneX()、e . getsceney())));});});//点击"结束"按钮时,鼠标行为储存进列表endb。单击了seton鼠标(e-{ pane。获取子对象().删除(beginb);for(int I=0;我列出。size();i ) { //每次鼠标模拟都将窗口透明,实现穿透舞台。濑户容量(0);if (list.get (i).et==MOUSE _ draged){ robot。鼠标按下(列表。得到(I).MB);} else {机器人。mousemove(列表。获取(I)。点2d);robot.mouseClick (list.get (i))。MB);}试试{ //为了效果明显,进行延迟线程.睡眠(50);} catch(中断异常ex){ ex。printstacktrace();} } });//面板不参与计算边界。鼠标点击事件发生后,会计算应该是哪个组件位于鼠标所在点的位置,而该面板因为不参与边界计算,所以也不会捕获到鼠标事件窗格。setpickonbounds(false);//窗口在前,不能拖到,都没有stage.initStyle (StageStyle .未装修);//窗口最大化舞台。设置最大化(true);//窗口透明度,为了使得开始按钮不会消失同时可以看见其他窗口,半透明舞台。濑户容量(0.3);场景场景=新场景(窗格);stage.setTitle(按键精灵);stage . set场景(场景);舞台。show();} public static void main(String[]args){ launch(args);}}到此这篇关于爪哇实现按键精灵的示例代码的文章就介绍到这了,更多相关爪哇按键精灵内容请搜索盛行信息技术以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行它!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。