java实现人工智能化屏幕监控窗口 java实现人工智能化屏幕监控窗口

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

java实现人工智能化屏幕监控窗口 java实现人工智能化屏幕监控窗口

成兮   2021-03-30 我要评论

具体代码实现(含注释)

public class Main{
  public static void main(String[] args) throws Exception{
    /* test code */
  }

  /**
  *用于实时监控屏幕的窗口
  *@author chengxi
  *@param void 
  *@return void 
  */
  public static void mvcontroll() throws Exception{

    /* 建立一个监控屏幕的窗口 */
    JFrame frame = new JFrame("人工智能化屏幕监控系统") ;
    frame.setSize(600,600) ;
    frame.setVisible(true) ;
    /* 设置总是显示在顶部 */
    frame.setAlwaysOnTop(true) ;
    /* 获取默认的工具包 */
    Toolkit tk = Toolkit.getDefaultToolkit() ;
    /* 使用工具包获取屏幕的大小,这是创建工具包的唯一作用 */
    Dimension dm = tk.getScreenSize() ;
    /* 创建图像的显示区域 */
    JLabel imageLabel = new JLabel() ;
    frame.add(imageLabel) ;
    /* 创建一个机器人 */
    Robot robot = new Robot() ;
    /* 持续监控屏幕 */
    while(true) {
      /* 创建用于显示屏幕分享部分的区域,填入x/y/width/height
      Rectangle rec = new Rectangle(frame.getWidth() , 0 , (int)dm.getWidth() - frame.getWidth() , (int)dm.getHeight()) ;
      /* 根据屏幕分享的当前分享图像创建一个图像对象 */
      BufferedImage bufimg = robot.createScreenCapture(rec)) ;
      /* 实时显示在图像显示区域中 */
      imageLabel.setIcon(new ImageIcon(bufimg)) ;
    }
  }

  /**
  *打开指定的路径
  public static void midopenQQ(String path) throws Exception{
    Desktop desktop = Desktop.getDesktop() ;
    /* 打开指定的uri所指定的应用程序 */
    desktop.open(new File(path)) ;
    /* 创建一个机器人 */
    Robot robot = new Robot() ;
    /* 因为创建机器人需要时间,因此在后续操作之前需要进行延迟加载 */
    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指定的路径所在的应用程序
  *@author chengxi
  *@param String path
  *@return void
  */
  public static void easyopenQQ(String path) throws Exception{
    Desktop desktop = Desktop.getDesktop() ;
    /* 打开指定的文件 */
    desktop.open(new File(path)) ;
  }

  /**
  *打开uri指定的网址
  *@author chengxi
  *@param String uri
  *@return void
  */
  public static void openBrowse(String uri) throws Exception{
    /* 允许java程序使用在桌面上注册了的所有应用程序 */
    Desktop desktop = Desktop.getDesktop() ;
    /* 使用默认的浏览器打开指定uri */
    desktop.browse(new URI("http://www.baidu.com")) ;
  }

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们