Fang.W
我也是江湖中人,但没有武功,比的是技术!——21世纪的江湖人

由于设备的限制,手机中支持的字体类型很有限。我们只能使用手机支持的字体来构造Font类对象。
同其他类不一样,我们不能通过 new Font() 这样的语句,来创建一个Font实例,因为Font类没有构
造函数。那么如何获得一个特定的字体呢?我们可以通过如下方法来获得,请看代码:

Font font;
font = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD, Font.SIZE_SMALL);

public void paint(Graphics g) {
 String str = "Welcome the Java world!";
 g.setFont(font);
 g.drawString(str, screenX / 2, MENU_Y, Graphics.TOP | Graphics.HCENTER);
}

函数getFont(int face, int style, int size)中:

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中,颜色的表达方式有两种:
public void paint(Graphics g) {
 //方法一,16进制表达方式
 g.setColor(0xffffff);
 //方法二,RGB表达方式
 g.setColor(255, 255, 255);
}

所以,一般颜色的设置也是在Canvas类中,通过Graphics的setColor()来设置要显示出的颜色。

posted on 2007-07-31 20:41 Fang.W 阅读(2994) 评论(4)  编辑  收藏 所属分类: J2ME

FeedBack:
# re: J2ME中,Font和Color的设置
2007-08-01 01:38 | little lotus
写的不是很全,希望对大家有用。  回复  更多评论
  
# re: J2ME中,Font和Color的设置
2007-08-22 19:06 | fighting
thanks  回复  更多评论
  
# re: J2ME中,Font和Color的设置
2008-05-23 16:54 | 路人甲
非常感谢//……  回复  更多评论
  
# re: J2ME中,Font和Color的设置
2008-11-20 19:36 | kwf
还行啊。对我有些帮助。谢谢
。。。。。。。  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: