本文介紹如何將手機螢幕的內容儲存為image物件,這裡認為手機螢幕上顯示的是乙個canvas。完成這乙個功能的思想就是使用緩衝機制。我們不能直接獲得canvas上的畫素,因此不能直接從canvas上的內容獲得image物件。轉換一下思路,如果把要繪製的canvas上的內容首先繪製到乙個image上,而這個image並不顯示到螢幕上,只是在繪畫完成後一次性的顯示到螢幕上。有經驗的朋友一定聯想到了雙緩衝機制,不過這裡並不是要使用雙緩衝解決閃屏的問題,而是要得到當前canvas的內容。
下面我們編寫乙個簡單的canvas類來測試一下這個想法,******canvas是canvas的子類,為了儲存canvas的內容,我們建立乙個image,大小與canvas的尺寸相當。
以下是引用片段:
可以看到paint()方法,並不是直接對canvas操作,而是先把要畫的內容繪製到乙個image上,然後再繪製到canvas上。這樣到你想抓取螢幕內容的時候就可以呼叫printme()方法了,返回offimage。編寫乙個midlet測試一下這個效果。
以下是引用片段:
執行printscreen,選擇print,即可把當前的螢幕顯示到乙個form中。
在J2ME手機程式開發中使用顏色
在j2me手機程式開發中使用顏色 出自 在j2me手機開發過程中,需要經常用到顏色來進行繪製,增強程式的表現效果,下面就介紹一下如何使用顏色。由於j2me技術比較簡單,所以沒有實現專門的顏色類,而只是使用rgb的概念來代表顏色。這裡簡單介紹一下rgb的概念,顏色是由紅 red 綠 green 藍 b...
J2ME程式設計最佳實踐之螢幕導航
經典的mvc模式可用於螢幕導航,model用於儲存應用程式資料,而view則是各個displayable物件,controller需要單獨的乙個類實現。由於midlet類本身在生命週期內就只有乙個例項,因此midlet類就非常適合作為controller。sun在blueprints示例程式smar...
使用JBuilder開發J2ME程式
使用jbuilder開發j2me程式 出自 現在實際應用大部分都是使用jbuilder在進行開發,所以簡單介紹一下如何使用。jbuiler 9 包括jb9 以上都包含了mobileset和wtk,可以直接用來開發。使用jb9以上開發j2me應用時,和使用jb進行一般的開發類似,步驟如下 1 新建pr...