import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
public final class MainMIDlet extends MIDlet {
public static MainMIDlet instance = null;
protected void destroyApp(boolean des) throws MIDletStateChangeException {
}
protected void pauseApp() {
}
protected void startApp() throws MIDletStateChangeException {
Displayable cur = Display.getDisplay(this).getCurrent();
if (cur == null || instance == null) {
instance = this;
Display.getDisplay(this).setCurrent(new Screen());
}
}
/** 退出程序 */
public static final void quitApp() {
try {
instance.destroyApp(false);
instance.notifyDestroyed();
} catch (MIDletStateChangeException e) {
e.printStackTrace();
}
}
class Screen extends Canvas {
public Font[] largeFont = new Font[27];
public Screen() {
largeFont[0] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD,
Font.SIZE_SMALL);
largeFont[1] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD,
Font.SIZE_MEDIUM);
largeFont[2] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD,
Font.SIZE_LARGE);
largeFont[3] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_ITALIC,
Font.SIZE_SMALL);
largeFont[4] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_ITALIC,
Font.SIZE_MEDIUM);
largeFont[5] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_ITALIC,
Font.SIZE_LARGE);
largeFont[6] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN,
Font.SIZE_SMALL);
largeFont[7] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN,
Font.SIZE_MEDIUM);
largeFont[8] = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN,
Font.SIZE_LARGE);
largeFont[9] = Font.getFont(Font.FACE_MONOSPACE, Font.STYLE_BOLD,
Font.SIZE_SMALL);
largeFont[10] = Font.getFont(Font.FACE_MONOSPACE, Font.STYLE_BOLD,
Font.SIZE_MEDIUM);
largeFont[11] = Font.getFont(Font.FACE_MONOSPACE, Font.STYLE_BOLD,
Font.SIZE_LARGE);
largeFont[12] = Font.getFont(Font.FACE_MONOSPACE,
Font.STYLE_ITALIC, Font.SIZE_SMALL);
largeFont[13] = Font.getFont(Font.FACE_MONOSPACE,
Font.STYLE_ITALIC, Font.SIZE_MEDIUM);
largeFont[14] = Font.getFont(Font.FACE_MONOSPACE,
Font.STYLE_ITALIC, Font.SIZE_LARGE);
largeFont[15] = Font.getFont(Font.FACE_MONOSPACE, Font.STYLE_PLAIN,
Font.SIZE_SMALL);
largeFont[16] = Font.getFont(Font.FACE_MONOSPACE, Font.STYLE_PLAIN,
Font.SIZE_MEDIUM);
largeFont[17] = Font.getFont(Font.FACE_MONOSPACE, Font.STYLE_PLAIN,
Font.SIZE_LARGE);
largeFont[18] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_BOLD, Font.SIZE_SMALL);
largeFont[19] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_BOLD, Font.SIZE_MEDIUM);
largeFont[20] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_BOLD, Font.SIZE_LARGE);
largeFont[21] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_ITALIC, Font.SIZE_SMALL);
largeFont[22] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_ITALIC, Font.SIZE_MEDIUM);
largeFont[23] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_ITALIC, Font.SIZE_LARGE);
largeFont[24] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_PLAIN, Font.SIZE_SMALL);
largeFont[25] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_PLAIN, Font.SIZE_MEDIUM);
largeFont[26] = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_PLAIN, Font.SIZE_LARGE);
}
protected void paint(Graphics g) {
int stx = 0;
int sty = 0;
int L_FontHei = 0;
for (int i = 0; i < largeFont.length / 2; i++) {
L_FontHei = largeFont[i].getHeight();
g.setColor(0xc00000);
g.fillRect(stx, sty, getWidth(), L_FontHei + 2);
g.setColor(0xffffff);
g.setFont(largeFont[i]);
g.drawString("字体类型(" + i + ")", stx, sty, 0);
sty += L_FontHei + 2;
}
stx = getWidth() / 2;
sty = 0;
for (int i = largeFont.length / 2; i < largeFont.length; i++) {
L_FontHei = largeFont[i].getHeight();
g.setColor(0xc00000);
g.fillRect(stx, sty, getWidth(), L_FontHei + 2);
g.setColor(0xffffff);
g.setFont(largeFont[i]);
g.drawString("字体类型(" + i + ")", stx, sty, 0);
sty += L_FontHei + 2;
}
}
}
}
手机玩童运行后的效果图:
WTK2.5.2的DefaultColorPhone模拟器运行后的效果图: