import javax.microedition.lcdui.*;
public class MainCanvas extends Canvas { Graphics g;
public Font m_aFont;
int start_x = 0;
int start_y = 0;
int end_x = 0;
int end_y = 0;
private String str1 = "GRPS";
private String str2 = "WIFI";
private String message = null;
boolean result = false;
boolean s = true;
public MainCanvas() { // m_aFont //分配数组大小
// 存储各种字体,如果创建新字体失败,则存储系统默认字体
try { m_aFont = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD, Font.SIZE_LARGE); } catch (Exception e) { m_aFont = Font.getDefaultFont(); } message = str1; }
protected void paint(Graphics g) { // 清屏
g.setColor(0x00000000); g.fillRect(0, 0, getWidth(), getHeight()); g.setColor(0x00FF0000); //标题
String str = "**智能终端掌上控制平台"; g.setFont(m_aFont); g.drawString(str, this.getWidth() / 2, 20, Graphics.HCENTER | Graphics.BOTTOM);
g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_LARGE)); g.setColor(255, 255, 255); //左三角
g.fillTriangle(20, 25, 20, 55, 0, 40); g.drawLine(20, 25, 220, 25); //直线
g.drawString(message, this.getWidth() / 2, 50, Graphics.HCENTER | Graphics.BOTTOM); //直线
g.drawLine(20, 55, 220, 55);
//右三角
g.fillTriangle(220, 25, 220, 55, this.getWidth(), 40);
this.drawMenu(g, 6);
}
protected void Menu1(Graphics g, String message) { //g.setColor(255, 255, 255);
g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_LARGE)); g.drawString(message, this.getWidth() / 2, 50, Graphics.HCENTER | Graphics.BOTTOM); }
protected void Menu2(Graphics g) { g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_LARGE)); g.drawString(str2, this.getWidth() / 2, 50, Graphics.HCENTER | Graphics.BOTTOM); }
public void pointerPressed(int x, int y) { start_x = x; start_y = y; if (start_x > 5 && start_x < 20 && start_y > 25 && start_y < 55) { if (message == str1) { message = str2; } else { message = str1; } } if (start_x > this.getWidth() - 20 && start_x < 250 && start_y > 25 && start_y < 50) { if (message == str2) { message = str1; } else { message = str2; } } repaint(); this.serviceRepaints();
} public void keyPressed(int keycode) { int action = this.getGameAction(keycode); switch (action) { case Canvas.FIRE: result = true; this.repaint(); break;
case Canvas.LEFT: result = true; this.repaint(); break;
case Canvas.RIGHT: { result = true; this.repaint(); break; } default: break; }
// repaint();
this.serviceRepaints(); // servicerepaints();
}
private void drawMenu(Graphics graphics, int number) { // 要传进来的Graphics,菜单宽,菜单间隔,菜单项目数
/** * 内部值,可以释放,方便修改 */ Graphics g; int num;
g = graphics; num = number; g.setColor(255, 255, 255); g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_LARGE)); switch (num) { case 6: g.drawString("您可以选择任何一种通讯方式(联网方式", 0, 90, Graphics.TOP | Graphics.LEFT);
case 5: g.drawString("必须与手机本身设置一致);", 0, 110, Graphics.TOP | Graphics.LEFT);
case 4: g.drawString("WIFI模式:无需使用(需无线路由器支持),", 0, 140, Graphics.TOP | Graphics.LEFT);
case 3: g.drawString("连接互联网速度快.", 0, 160, Graphics.TOP | Graphics.LEFT);
case 2: g.drawString("GPRS模式:模式经济(可包月),连接互联网", 0, 190, Graphics.TOP | Graphics.LEFT);
case 1: g.drawString("速度稳定.", 0, 210, Graphics.TOP | Graphics.LEFT);
default: break; } //flushGraphics();
}
}
|