摘 要 在Java語言的學習中,初學者為了進一步提高的編程能力,窗體的編寫實現與實際文件直接的交換運作編寫是必學之路。首先我們需要熟悉awt類和swing類的基本屬性和方法,方便我們在編寫程序時候合理調用。熟悉implements接口和類繼承調用,具體過程看正文。
關鍵詞 Java 瀏覽器 圖片 圖片瀏覽器
一、對線程的理解
同個應用中,多個任務同時進行。就像QQ聊天應用一樣,每打開一個聊天窗口就啟動了一個線程。線程可以有多個,但CPU每時每刻只做一件事。但是由于cpu處理速度很快,在極短的時間內,CPU在多線程快速跳轉處理,我們就感覺是同時進行的。所以宏觀上,線程時并發進行的;從微觀角度看,線程是異步執行的。使用線程的目的是最大限度的利用CPU資源。想想QQ聊天的時候,如果沒有多線程,一個人的信息沒有發完另一個人的信息發不過來,會是什么情況。在java中要想實現多線程,有兩種手段,一種是繼續Thread類,另外一種是實現Runable接口。這里瀏覽器的整體構造分為上下兩個場景,上面是顯示圖片的主要場景,下面是放置按鈕的次要場景。共有7個主要按鈕原件,分別是選擇圖片,上一張,下一張,順序播放,循環播放,暫停和另存為。
二、具體實現方法
首先要寫一個公共類,接口監聽事件,寫私有定義private JFrame 窗體和private MyCanvas mc 的空白矩形區域,應用程序可以在該區域內繪圖,或者可以從該區域捕獲用戶的輸入事件。再定義字符串private String 文件地址、文件名字;定義文件private File[] files和整型int findex用來表示圖片文件第幾張的數目。定義文件窗口FileDialog fd_load,fd_save和MyFilter filter;定義按鈕Button select,previous,next,start,restart,stop,save;最后定義時間控制器Timer timer。我們可以新建一個面板,向面板上添加我們所定義的控件。JPanel pb = new JPanel();
new ImageIcon(\"./Image/addFile.gif\");select = new JButton(\"選擇圖片\",圖);
new ImageIcon(\"./Image/Back.gif\");previous = new JButton(\"上一張\",圖);
new ImageIcon(\"./Image/Forward.gif\");next = new JButton(\"下一張\",圖);
new ImageIcon(\"./Image/play.gif\");start = new JButton(\"順序播放\",圖);
new ImageIcon(\"./Image/replay.gif\");restart = new JButton(\"循環播放\",圖);
new ImageIcon(\"./Image/pause.gif\");stop = new JButton(\"暫停\",圖);
new ImageIcon(\"./Image/save.gif\");save = new JButton (\"另存為\",圖);
添加監聽分別用select、previous、next調用addActionListener(this)方法,然后用add()再添加他們到面板上。新建一個new MyCanvas();然后setBackground(new Color(200,210,230));來設置背景顏色。最后把面板添加在窗口中add(pb,\"South\");add(mc,\"Center\");當然這里可以更加自己的需要修改面板的位置。FileDialog 類顯示一個對話框窗口,用戶可以從中選擇文件,之后可以用new FileDialog(窗體,\"打開文件\",FileDialog.LOAD)來創建一個打開文件功能的對象和new FileDialog(窗體,\"另存為文件\",FileDialog.SAVE)來創建一個另存為功能的對象,這個FileDialog 類主要是顯示一個用戶可以從中選擇文件的對話框窗口。如果需要將此文件對話框窗口的文件名過濾器設置為指定的過濾器就利用方法setFilenameFilter(filter)。最后圖片瀏覽器的瀏覽切換功能,要實現自動切換,那么就要定義一個時間對象timer。通過getParent()獲得此文件對話框的目錄,通過getName()獲得此文件對話框的選定文件的名字,這里為了安全可以寫一個判斷語句判斷文件地址是否為空,display(new File(文件地址+\"\\\"+文件名字)); files = new File(文件地址).listFiles(filter)。最后運行就可以得到一個很漂亮的圖片瀏覽界面。
參考文獻:
[1]周旭東,王麗愛.程序設計語言實驗教學方法探討[J].計算機時代,2011(08).
[2]劉維.Java程序設計課程的教學分析與探究[J].考試周刊, 2012(22).
[3]黃林國.高職計算機應用基礎項目化教學改革[J].計算機教育,2011(14).
[4]魏曉艷.JAVA課程中基于工作過程的項目教學實踐[J].陜西國防工業職業技術學院學報,2011(02).