基本介紹
- 中文名:SuperWaba
- 外文名:SuperWaba
- 支持的設備:Palm OS Windows CE/Pocket PC
- 組成:虛擬機、開發和部署工具、UI控制項
優點,缺點,支持的OS,支持的設備,Palm OS 設備,Windows CE/Pocket PC 設備,如何獲得SuperWaba,開始用SuperWaba編程,
優點
1. 跨平台兼容性超高,一個程式基本不用改動,重新編譯一下就可以在Palm OS或PPC上跑;
2. 豐富的API,可以使用到Symbol的條形碼識別及擴展卡等等;
3.可以方便的從Palm OS style換到非Palm OS style;
4. SW的更新速度驚人的快,平均每個月都有新的版本發布!
5.最重要的一條……它是完全免費的,而且遵守GPL協定,原始碼全部公開,並放在sourceforge上。
缺點
1.比起用CW寫的C程式會(當然)慢一些,但是下周一(12月15號)發布的SW4.1將是ARM native,到時候會有很明顯的速度提升;
2.目前還不支持中文,但即將到來的SW 4.1將會!!(它的官方網站上就用中文寫著:Full Unicode support (UfoLib) – ready 在下一版本(4.1)中將會假如對中文的支持。
3.比C程式能用到的API會少一些
支持的OS
Palm OS 3到5.2.1(HandSpring的OS3.1 需要打個補丁才能跑)
Windows CE 從2到3(CE.NET還沒試過)
Pocket PC從2000一直到2003(只能用一個字形容:爽!那個程式能支持這么多的OS和處理器框架!)
支持的設備
Palm OS 設備
Handspring: Treo 180, Visor Pro (PalmOS 3.5), Visor Platinum, Visor Prism, Treo 600 (!!!)
Palm:
o Professional, III, IIIx, IIIc, IIIe, V, Vx
o M105, M500, M505, M515, M125, Palm 130
o Zire, Zire 71, Zire21
o Tungsten C, Tungsten W, Tungsten T, Tungsten T2, Tungsten T3, Tungsten E
Samsung: SPH-I330, Kyocera Smartphone 6035, Kyocera 7135
Sony CLIE: S300, T-615, S360, TG50, N770C/E, NX70V, NX60, SJ30, SL10, SJ33, SJ20
Symbol: SPT 1500, 1550 and 1700
Handera 330(不支持虛擬手寫區;而且不知為什麼字型變成了小字型)
Windows CE/Pocket PC 設備
Compaq: iPaq 3670, iPaq H3970, iPaq 3900, iPaq 1910, Pocket PC Aero 1550
Dell: Axim A5, Axim X5
HP: Jornada 540 (SH3), Jornada 680/690
HTC: Falcon
Symbol: PDT8100 (Pocket PC 3.0), PDT8146 (Pocket PC 2002)
Toshiba: e350 Intel PXA
Vandem: Clio (HPC 2.11) - cabs don't work but the files can be installed manually for MIPS
ViewSonic: V35, V37
32-bit Windows
Windows 98
Windows NT
Windows XP
windows 2000
如何獲得SuperWaba
要下載它的SDK話,得先註冊(免費):點Sign Up,然後按照提示完成。
註冊好了後,點Downlaod,登入後點Download SuperWaba SDK即可。
開始用SuperWaba編程
雖然Eclipse要比MobileCreator強大的多,但是剛開始還是先從簡單的入手吧!安裝完Tauschke MobileCreator 1.72並啟動後,點“Project”,“New…”,然後輸入工程的名字,這裡就隨便取一個我最常用的Faint吧 :) 記住要把Create MainWindow Class打上鉤,要不然你還得自己從零開始寫!
點完OK後,你會發現左邊的Source欄多了一個Faint.java檔案,這就是我們剛剛創建的MainWindow class。
所有的SuperWaba程式都要有一個並且只能有一個MainWindow class,否則後果自負!這個MainWindow就是主視窗啦……
好,先看看代碼:
import waba.ui.*;import waba.fx.*;public class Faint extends MainWindow {String col0[] = {"Options","Cut","Copy","Paste"};String col1[] = {"About Faint","Info"};public Faint() {setDoubleBuffer(true);setBorderStyle(TAB_ONLY_BORDER);setTitle("Faint");setMenuBar(new MenuBar(new String[][]{col0,col1}));}public void onStart() {}public void onEvent(Event event) {}public void onPaint(Graphics g) {} }
最開始的兩行import,把一些最常用的SW classes給導入。其它的還有:
waba.fx Classes related to Graphics, fonts, geometric classes (Rect, Coord), Image, sound. waba.io Input output basic classes, to Access PDB files (represented by a Catalog), sockets, serial port, and some utility classes to make easier dealing with IO. waba.sys Classes that contains functions to deal with the underlying Operating System characteristics and configurations, and convertion classes. waba.ui The most important package, with all user interface controls you need to create good and fast programs. waba.utilUtility classes, to deal with date, random number generation, and data strUCtures (Vectors and Hashtables).
除此之外,SW還有Extension Packages,可以附加使用。具體細節請看documentat