關於截圖工具的總結

這次是用java寫的一個截圖工具,這個項目的邏輯主要是

①先建立一個主操作界面

②通過Robot類 實例化了ro 通過控制本地控制輸入源設備

③通過ro.createscreenCapture()方法得到是整個屏幕的截圖,其中傳遞的參數是通過Tookit和Dimension獲得的整個屏幕的大小,然後實例化的矩形

④最核心的代碼部分就是對於該屏幕截圖的裁剪處理,定義了一個繼承JPanel的Temp內部類,裏面重寫了PaintComponent,主要的目的就是讓用戶進行裁剪操作,其中還包括各種鼠標的操作,將用戶的選取通過getSubimage方法獲得

⑤對獲得的用戶截圖的處理,定義了一個Pic的內部類繼承於JPanel裏面實現了加入JTabbedPane的面板內容,並且實現了其中的複製,保存和刪除按鈕的事件

⑥最後就是對圖片格式保存的處理

學習到的內容:

BufferedImage中的getSubimage方法,獲得一張圖片上規定選區的部分,

Robot中的createscreenCapture()方法,獲得屏幕指定部分的截圖,

通過UIManger改變界面的Java和本系統的界面風格,

瞭解到GUI界面可以用一個線程來啓動

SwingUtilities.invokeLater(new Runnable(){
   
       public void run()
       {
           new Screen();
       }
   });

對於enum,枚舉類型的使用,在裏面也可以實例化,如果裏面要添加一些方法,在枚舉完之後要添加有一個分號‘;’,然後再寫所要添加的方法

加深了對於繼承JPanel的使用

加深了對於鼠標事件的使用

對於以前基本沒用過的repaint方法也得到了鍛鍊

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章