2018-09-29 13:43:38 1060瀏覽
今天扣丁學(xué)堂Java培訓(xùn)老師給大家介紹一下關(guān)于Java開(kāi)發(fā)實(shí)現(xiàn)人工智能化屏幕監(jiān)控窗口的具體代碼,希望對(duì)同學(xué)們學(xué)習(xí)Java開(kāi)發(fā)有所幫助,下面我們一起看一下吧。
public class Main{ public static void main(String[] args) throws Exception{ /* test code */ } /** *用于實(shí)時(shí)監(jiān)控屏幕的窗口 *@author chengxi *@param void *@return void */ public static void mvcontroll() throws Exception{ /* 建立一個(gè)監(jiān)控屏幕的窗口 */ JFrame frame = new JFrame("人工智能化屏幕監(jiān)控系統(tǒng)") ; frame.setSize(600,600) ; frame.setVisible(true) ; /* 設(shè)置總是顯示在頂部 */ frame.setAlwaysOnTop(true) ; /* 獲取默認(rèn)的工具包 */ Toolkit tk = Toolkit.getDefaultToolkit() ; /* 使用工具包獲取屏幕的大小,這是創(chuàng)建工具包的唯一作用 */ Dimension dm = tk.getScreenSize() ; /* 創(chuàng)建圖像的顯示區(qū)域 */ JLabel imageLabel = new JLabel() ; frame.add(imageLabel) ; /* 創(chuàng)建一個(gè)機(jī)器人 */ Robot robot = new Robot() ; /* 持續(xù)監(jiān)控屏幕 */ while(true) { /* 創(chuàng)建用于顯示屏幕分享部分的區(qū)域,填入x/y/width/height Rectangle rec = new Rectangle(frame.getWidth() , 0 , (int)dm.getWidth() - frame.getWidth() , (int)dm.getHeight()) ; /* 根據(jù)屏幕分享的當(dāng)前分享圖像創(chuàng)建一個(gè)圖像對(duì)象 */ BufferedImage bufimg = robot.createScreenCapture(rec)) ; /* 實(shí)時(shí)顯示在圖像顯示區(qū)域中 */ imageLabel.setIcon(new ImageIcon(bufimg)) ; } } /** *打開(kāi)指定的路徑 public static void midopenQQ(String path) throws Exception{ Desktop desktop = Desktop.getDesktop() ; /* 打開(kāi)指定的uri所指定的應(yīng)用程序 */ desktop.open(new File(path)) ; /* 創(chuàng)建一個(gè)機(jī)器人 */ Robot robot = new Robot() ; /* 因?yàn)閯?chuàng)建機(jī)器人需要時(shí)間,因此在后續(xù)操作之前需要進(jìn)行延遲加載 */ robot.delay(2000) ; /* 使用robot的mouseMove方法將鼠標(biāo)的光標(biāo)移動(dòng)到指定的位置上,這里我設(shè)置的是QQ界面的登錄按鈕上面 */ robot.mouseMove(709,519) ; /* 定義鼠標(biāo)事件:按下 */ robot.mousePress(InputEvent.BUTTON1_DOWN_MASK) ; /* 定義鼠標(biāo)事件:放開(kāi) */ robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK) ; /* 事件的延遲 */ robot.delay(300) ; } /** *簡(jiǎn)單的打開(kāi)path指定的路徑所在的應(yīng)用程序 *@author chengxi *@param String path *@return void */ public static void easyopenQQ(String path) throws Exception{ Desktop desktop = Desktop.getDesktop() ; /* 打開(kāi)指定的文件 */ desktop.open(new File(path)) ; } /** *打開(kāi)uri指定的網(wǎng)址 *@author chengxi *@param String uri *@return void */ public static void openBrowse(String uri) throws Exception{ /* 允許java程序使用在桌面上注冊(cè)了的所有應(yīng)用程序 */ Desktop desktop = Desktop.getDesktop() ; /* 使用默認(rèn)的瀏覽器打開(kāi)指定uri */ desktop.browse(new URI("http://www.baidu.com")) ; }
以上就是關(guān)于扣丁學(xué)堂Java開(kāi)發(fā)培訓(xùn)之實(shí)現(xiàn)人工智能化屏幕監(jiān)控窗口的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,扣丁學(xué)堂在線Java視頻直播體系課程服務(wù)包含課后錄播,配套筆記源碼,課上課后答疑,作業(yè)批改,階段考核,一對(duì)一輔導(dǎo),項(xiàng)目答辯,班主任電話回訪督導(dǎo),畢業(yè)證書(shū),就業(yè)指導(dǎo)及全國(guó)15個(gè)校區(qū)提供就業(yè)推薦服務(wù),緊貼企業(yè)一線流行開(kāi)發(fā)技術(shù),學(xué)員進(jìn)入企業(yè)即能上手參與前沿項(xiàng)目,扣丁學(xué)堂Java技術(shù)交流群:670348138。
【關(guān)注微信公眾號(hào)獲取更多學(xué)習(xí)資料】
查看更多關(guān)于“Java開(kāi)發(fā)資訊”的相關(guān)文章>>