你對J2ME中Font和Color的設置是否了解,這裡和大家簡單分享一下,由於設備的限制,手機中支持的字體類型很有限。另外同其他類不一樣,我們不能通過newFont()這樣的語句,來創建一個Font實例,因為Font類沒有構造函數。
J2ME中Font設置
由於設備的限制,手機中支持的字體類型很有限。我們只能使用手機支持的字體來構造Font類對象。同其他類不一樣,我們不能通過newFont()這樣的語句,來創建一個Font實例,因為Font類沒有構造函數。那麼如何獲得一個特定的字體呢?我們可以通過如下方法來獲得,請看代碼:
- Fontfont;
- font=Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.SIZE_SMALL);
- publicvoidpaint(Graphicsg){
- Stringstr="WelcometheJavaworld!";
- g.setFont(font);
- g.drawString(str,screenX/2,MENU_Y,Graphics.TOP|Graphics.HCENTER);
- }
函數getFont(intface,intstyle,intsize)中:
1)face為字體的外觀,J2ME中提供了如下幾種face:
- Font.FACE_SYSTEN
- Font.FACE_MONOSPACE
- Font.FACE_PROPORTIONAL
2)style為字體的風格,J2ME中提供了如下幾種style:
- Font.STYLE_PLAIN
- Font.STYLE_BOLD
- Font.STYLE_ITALIC
- Font.STYLE_UNDERLINED
其中,後三種可以混合使用,例:粗體加斜體的寫法
- Font.getFont(Font.FACE_SYSTEM,
- Font.STYLE_BOLD|Font.STYLE_ITALIC,Font.SIZE_SMALL);
3)size為字體的大小,J2ME中提供了如下幾種size:
- Font.SIZE_SMALL
- Font.SIZE_MEDIUM
- Font.SIZE_LARGE
Font類一般都是在Canvas類中使用,通過g.setFont(font)這樣的語句來設置字體。在高級UI中,
一般是用不著Font類的。但有個例外,在MIDP2.0中,List類可以設置每行的字體格式。方法是:
list.setFont(0,font);//第一行的字體為font
J2ME中Color設置
J2ME中沒有color類,那麼我們用什麼方法來表達顏色呢?
在J2ME中,顏色的表達方式有兩種:
- publicvoidpaint(Graphicsg){
- //方法一,16進制表達方式
- g.setColor(0xffffff);
- //方法二,RGB表達方式
- g.setColor(255,255,255);
- }
所以,一般顏色的設置也是在Canvas類中,通過Graphics的setColor()來設置要顯示出的顏色