TA的每日心情 | 开心 2021-3-12 23:18 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
由于设备的限制,手机中支持的字体类型很有限。我们只能使用手机支持的字体来构造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()来设置要显示出的颜色。 |
|