利用Java编写手机应用程序PalmOS基础篇[6]
[入库:2006年2月23日] [更新:2007年3月24日]
也就是說,Spotlet的paint函式並不會得到一個Graphics物件以供繪圖使用,因為系統並不會呼叫paint函式,這個部分我們將在往後的文章中再和大家說明。我們必須改用Graphics物件的getGraphics函式來取得繪圖用的畫布,之前我們的範例程式如下: | | static Graphics g = Graphics.getGraphics(); |
|
| 任何時候我們需要在畫面上繪圖時,只要直接使用利用Graphics.getGraphics()所取得的Graphics物件來作畫即可。 |
在Applet之中,我們會呼叫Container的add函式,並傳入一個GUI物件當作參數,藉此連繫GUI物件與其Container的關係。可是由於在Spotlet並沒有這種Container與其內部元件的從屬關係,因此每次畫面重畫,呼叫Spotlet的paint函式之時,我們必須自己手動叫元件自己把自己畫在螢幕上,在我們的範例程式裡頭如下: | | private void paint() {
g.clearScreen();
g.drawString("Hello World",60, 80);
exitButton.paint(); } |
|
|
|
| 最後要跟讀者們提醒的是:雖然Java Applet以及Java Spotlet都屬於Java程式,但是充其量也只是代表他們是以"Java"來撰寫程式罷了,實際上的程式架構還是會依照他們的特殊定位而有所不同。所以同樣是撰寫GUI程式,但是程式流動的方向和概念有時候是相差慎選的。Palm上的應用程式有其獨特的風格,程式設計師在撰寫Palm應用程式時,也不能拿撰寫PC上應用程式的思考模式來撰寫,畢竟,Palm只是一台功能有限的機器,在Palm的世界裡,一點一滴的記憶體都是十分寶貴的,太花俏的GUI只會佔據太多的記憶體,佔據CPU大量的運算週期,也讓小小的螢幕看起來更加複雜,在Palm的世界裡一點都不實用。因此,請大家秉持著新的程式撰寫觀念進入Palm的世界。下一次我們將繼續深入Spotlet的世界,有機會的話我們還會深入KVM的核心,敬請期待,咱們下次見。Bye bye! |
附錄:利用Palm模擬器測試我們所撰寫的Java程式 |
| 上面我們所討論的程式都是把程式直接下載到Palm上可是萬一讀者沒有Palm呢? 除了建議大家去買一台之外,另外的解決方案就是利用模擬器。除了CLDC內附的陽春模擬器之外(只能執行.class檔),推薦大家使用的就是POSE了。POSE 是 Palm OS Emulator 的縮寫,即Palm OS模擬器的意思。跟一般遊樂器的模擬器一樣,它能夠在您的電腦模擬出 Palm OS 的作業環境,就如同真的在使用 Palm 一樣。開發Palm應用程式的程式設計師都應該安裝POSE才對,除了可以用來測試或除錯開發中的軟體,安裝POSE也會省下程式設計師很多的時間,畢竟老是把程式下載到Palm再執行,會花掉許多時間的! 一般的使用者也可以安裝一套模擬器,直接在電腦上試用剛剛從網路上抓到的一堆軟體,既方便又簡單。對於沒有預算購買Palm的朋友們也可以先用來『聞香』一番,體驗一下 Palm 的操作介面與使用環境。所以POSE對於Palm的愛用者實在有著莫大的功勞。 | | 目前,網路上已經有十分出色的文章在介紹有關模擬器的安裝與使用,請讀者們親自到PalmFab網站上觀賞這些文章: | | 相信會受益良多。 | | 注意,當您用POSE載入模擬器的時候,預設的RAM大小只有1024K,對於KVM來說,這是不夠用的,請將RAM大小調成8192K,否則我們所撰寫好的程式無法順利執行。 |
|
本文关键:利用Java编写手机应用程序PalmOS基础篇
本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)