java实现人工智能化屏幕监控窗口
本文实例为大家分享了java实现人工智能化屏幕监控窗口的具体代码,供大家参考,具体内容如下
具体代码实现(含注释)
publicclassMain{ publicstaticvoidmain(String[]args)throwsException{ /*testcode*/ } /** *用于实时监控屏幕的窗口 *@authorchengxi *@paramvoid *@returnvoid */ publicstaticvoidmvcontroll()throwsException{ /*建立一个监控屏幕的窗口*/ JFrameframe=newJFrame("人工智能化屏幕监控系统"); frame.setSize(600,600); frame.setVisible(true); /*设置总是显示在顶部*/ frame.setAlwaysOnTop(true); /*获取默认的工具包*/ Toolkittk=Toolkit.getDefaultToolkit(); /*使用工具包获取屏幕的大小,这是创建工具包的唯一作用*/ Dimensiondm=tk.getScreenSize(); /*创建图像的显示区域*/ JLabelimageLabel=newJLabel(); frame.add(imageLabel); /*创建一个机器人*/ Robotrobot=newRobot(); /*持续监控屏幕*/ while(true){ /*创建用于显示屏幕分享部分的区域,填入x/y/width/height Rectanglerec=newRectangle(frame.getWidth(),0,(int)dm.getWidth()-frame.getWidth(),(int)dm.getHeight()); /*根据屏幕分享的当前分享图像创建一个图像对象*/ BufferedImagebufimg=robot.createScreenCapture(rec)); /*实时显示在图像显示区域中*/ imageLabel.setIcon(newImageIcon(bufimg)); } } /** *打开指定的路径 publicstaticvoidmidopenQQ(Stringpath)throwsException{ Desktopdesktop=Desktop.getDesktop(); /*打开指定的uri所指定的应用程序*/ desktop.open(newFile(path)); /*创建一个机器人*/ Robotrobot=newRobot(); /*因为创建机器人需要时间,因此在后续操作之前需要进行延迟加载*/ robot.delay(2000); /*使用robot的mouseMove方法将鼠标的光标移动到指定的位置上,这里我设置的是QQ界面的登录按钮上面*/ robot.mouseMove(709,519); /*定义鼠标事件:按下*/ robot.mousePress(InputEvent.BUTTON1_DOWN_MASK); /*定义鼠标事件:放开*/ robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK); /*事件的延迟*/ robot.delay(300); } /** *简单的打开path指定的路径所在的应用程序 *@authorchengxi *@paramStringpath *@returnvoid */ publicstaticvoideasyopenQQ(Stringpath)throwsException{ Desktopdesktop=Desktop.getDesktop(); /*打开指定的文件*/ desktop.open(newFile(path)); } /** *打开uri指定的网址 *@authorchengxi *@paramStringuri *@returnvoid */ publicstaticvoidopenBrowse(Stringuri)throwsException{ /*允许java程序使用在桌面上注册了的所有应用程序*/ Desktopdesktop=Desktop.getDesktop(); /*使用默认的浏览器打开指定uri*/ desktop.browse(newURI("http://www.baidu.com")); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。