Java/J2ME
- 2D
- Alert
- Animation
- Application
- Audio Media
- Basics
- CheckBox
- ChoiceGroup
- Clip
- CustomItem
- Database Persistence
- Date
- Environment
- Event Command
- Exception
- Form
- Game
- Gauge
- Image
- Key Event
- List
- Networks
- RadioButton
- Security
- Shape
- Sort Search
- StringItem
- System Properties
- TextBox TextField
- Thread
- Ticker
- Timer
- XML
Font Canvas
<source lang="java">
import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Font; import javax.microedition.lcdui.Graphics; public class FontCanvas extends Canvas {
private Font systemFont, monospaceFont, proportionalFont; public FontCanvas() { this(Font.STYLE_PLAIN); } public FontCanvas(int style) { setStyle(style); } public void setStyle(int style) { systemFont = Font.getFont(Font.FACE_SYSTEM, style, Font.SIZE_MEDIUM); monospaceFont = Font.getFont(Font.FACE_MONOSPACE, style, Font.SIZE_MEDIUM); proportionalFont = Font.getFont(Font.FACE_PROPORTIONAL, style, Font.SIZE_MEDIUM); } public void paint(Graphics g) { int w = getWidth(); int h = getHeight(); // Clear the Canvas. g.setGrayScale(255); g.fillRect(0, 0, w - 1, h - 1); g.setGrayScale(0); g.drawRect(0, 0, w - 1, h - 1); int x = w / 2; int y = 20; y += showFont(g, "System", x, y, systemFont); y += showFont(g, "Monospace", x, y, monospaceFont); y += showFont(g, "Proportional", x, y, proportionalFont); } private int showFont(Graphics g, String s, int x, int y, Font f) { g.setFont(f); g.drawString(s, x, y, Graphics.TOP | Graphics.HCENTER); return f.getHeight(); }
}
</source>
Font Canvas MIDlet
<source lang="java">
import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class FontCanvasMIDlet extends MIDlet {
public FontCanvasMIDlet() { // constructor } public void startApp() { Canvas canvas = new FontCanvas(); Display display = Display.getDisplay(this); display.setCurrent(canvas); } public void pauseApp() { } public void destroyApp(boolean unconditional) { }
} class FontCanvas extends Canvas {
public void paint(Graphics g) { g.setColor(0xffffff); g.fillRect(0, 0, getWidth(), getHeight()); g.setColor(0x000000); g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_LARGE)); g.drawString("System Font", 0, 0, g.LEFT | g.TOP); g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_MEDIUM)); g.drawString("Medium Size", 0, 15, g.LEFT | g.TOP); g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD, Font.SIZE_MEDIUM)); g.drawString("Bold Style", 0, 30, g.LEFT | g.TOP); g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_ITALIC, Font.SIZE_MEDIUM)); g.drawString("Italic Style", 0, 45, g.LEFT | g.TOP); g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_UNDERLINED, Font.SIZE_MEDIUM)); g.drawString("Underlined Style", 0, 60, g.LEFT | g.TOP); }
}
</source>
Font MIDlet
<source lang="java">
/* Wireless Java 2nd edition Jonathan Knudsen Publisher: Apress ISBN: 1590590775
- /
import javax.microedition.lcdui.*; import javax.microedition.midlet.*; public class FontMIDlet extends MIDlet implements CommandListener {
private FontCanvas mFontCanvas; private Command mBoldCommand, mItalicCommand, mUnderlineCommand; public FontMIDlet() { mFontCanvas = new FontCanvas(); mBoldCommand = new Command("Bold", Command.SCREEN, 0); mItalicCommand = new Command("Italic", Command.SCREEN, 0); mUnderlineCommand = new Command("Underline", Command.SCREEN, 0); Command exitCommand = new Command("Exit", Command.EXIT, 0); mFontCanvas.addCommand(mBoldCommand); mFontCanvas.addCommand(mItalicCommand); mFontCanvas.addCommand(mUnderlineCommand); mFontCanvas.addCommand(exitCommand); mFontCanvas.setCommandListener(this); } public void startApp() { Display.getDisplay(this).setCurrent(mFontCanvas); } public void pauseApp() {} public void destroyApp(boolean unconditional) {} public void commandAction(Command c, Displayable s) { if (c.getCommandType() == Command.EXIT) { notifyDestroyed(); return; } boolean isBold = mFontCanvas.isBold() ^ (c == mBoldCommand); boolean isItalic = mFontCanvas.isItalic() ^ (c == mItalicCommand); boolean isUnderline = mFontCanvas.isUnderline() ^ (c == mUnderlineCommand); int style = (isBold ? Font.STYLE_BOLD : 0) | (isItalic ? Font.STYLE_ITALIC : 0) | (isUnderline ? Font.STYLE_UNDERLINED : 0); mFontCanvas.setStyle(style); mFontCanvas.repaint(); }
}
</source>