国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

實例說明錨點位置的定義

2019-11-18 16:06:08
字體:
來源:轉載
供稿:網友
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class Text extends MIDlet
{
  PRivate Display  display;       // The display
  private TextCanvas canvas;      // Canvas to display text
  private AnchorPtList anchorPt;  // List to query for anchor point
  private int anchorPoint = Graphics.BASELINE  Graphics.HCENTER;
  public Text()
  {
    display = Display.getDisplay(this);
    canvas  = new TextCanvas(this);
    anchorPt = new AnchorPtList("Anchor point", List.IMPLICIT, this);    
  }
  protected void startApp()
  {
    showCanvas();  
  }
  protected void pauseApp()
  { }

  protected void destroyApp( boolean unconditional )
  { }

  public void showCanvas()
  {
    display.setCurrent(canvas);
  }

  public void showList()
  {
    display.setCurrent(anchorPt);
  }
  public int getAnchorPoint()
  {
    return anchorPoint;
  }
  public void setAnchorPoint(int anchorPoint)
  {
    this.anchorPoint = anchorPoint;
  }
  public void exitMIDlet()
  {
    destroyApp(true);
    notifyDestroyed();
  }
}

/*--------------------------------------------------
* Class TextCanvas
*
* Draw text at specified anchor point
*-------------------------------------------------*/
class TextCanvas extends Canvas implements CommandListener
{
  private Command cmExit;  // Exit midlet
  private Command cmGetAnchorPt;
  private Text midlet;
  public TextCanvas(Text midlet)
  {
    this.midlet = midlet;
    // Create commands & listen for events
    cmExit = new Command("Exit", Command.EXIT, 1);
    cmGetAnchorPt = new Command("Anchor", Command.SCREEN, 2);
    addCommand(cmExit);
    addCommand(cmGetAnchorPt);
    setCommandListener(this);
  } 

  /*--------------------------------------------------
  * Draw text 
  *-------------------------------------------------*/
  protected void paint(Graphics g)
  {
    int xcenter = getWidth() / 2,
        ycenter = getHeight() / 2;


    // Due to a bug in MIDP 1.0.3 we need to 
    // force a clear of the display
    g.setColor(255, 255, 255);                  // White pen
    g.fillRect(0, 0, getWidth(), getHeight());
    g.setColor(0, 0, 0);                        // Black pen

    // Choose a font
    g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_MEDIUM));
    // Draw a dot at the center of the display
    g.drawLine(xcenter, ycenter, xcenter, ycenter);
    // x and y are always at the center of the display 
    // Move the text around x and y based on the anchor point 
    g.drawString("go j2me!", xcenter, ycenter, midlet.getAnchorPoint());
  }

  /*--------------------------------------------------
  * Exit midlet or show anchor point selection list
  *-------------------------------------------------*/
  public void commandAction(Command c, Displayable d)
  {
    if (c == cmExit)
      midlet.exitMIDlet();
    else if (c == cmGetAnchorPt)
    {
      midlet.showList();      
    }
  }   
}

/*--------------------------------------------------
* Class AnchorPtList
*
* List to query for an anchor point
*-------------------------------------------------*/
class AnchorPtList extends List implements CommandListener
{
  private Text midlet;
  public AnchorPtList(String title, int listType, Text midlet)
  {
    // Call list constrUCtor
    super(title, listType); 

    this.midlet = midlet;

    append("Top/Left", null);
    append("Top/HCenter", null);
    append("Top/Right", null);
    append("Baseline/Left", null);    
    append("Baseline/HCenter", null);
    append("Baseline/Right", null);
    append("Bottom/Left", null);    
    append("Bottom/HCenter", null);
    append("Bottom/Right", null);        
    setCommandListener(this);
  }

  /*--------------------------------------------------
  * Commands to set anchor point
  *-------------------------------------------------*/
  public void commandAction(Command c, Displayable s)
  {
    switch (getSelectedIndex())
    {
      case 0:
          midlet.setAnchorPoint(Graphics.TOP  Graphics.LEFT);
        break;

      case 1:
          midlet.setAnchorPoint(Graphics.TOP  Graphics.HCENTER);
        break;
      case 2:
        midlet.setAnchorPoint(Graphics.TOP  Graphics.RIGHT);
        break;        

      case 3:
        midlet.setAnchorPoint(Graphics.BASELINE  Graphics.LEFT);
        break;        

      case 4:
        midlet.setAnchorPoint(Graphics.BASELINE  Graphics.HCENTER);
        break;        

      case 5:
        midlet.setAnchorPoint(Graphics.BASELINE  Graphics.RIGHT);
        break;        

      case 6:
        midlet.setAnchorPoint(Graphics.BOTTOM  Graphics.LEFT);
        break;        

      case 7:
        midlet.setAnchorPoint(Graphics.BOTTOM  Graphics.HCENTER);
        break;        

      case 8:
        midlet.setAnchorPoint(Graphics.BOTTOM  Graphics.RIGHT);
        break;        
      default:
        midlet.setAnchorPoint(Graphics.BASELINE  Graphics.HCENTER);
    }

    midlet.showCanvas();
  }
}

(出處:http://m.survivalescaperooms.com)



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阿坝| 和林格尔县| 辽宁省| 古浪县| 台东市| 都江堰市| 大庆市| 芦山县| 大化| 孟州市| 玛纳斯县| 尉犁县| 翁牛特旗| 嵊泗县| 南京市| 徐汇区| 介休市| 拉萨市| 界首市| 灵寿县| 汨罗市| 四平市| 甘洛县| 瓦房店市| 金平| 策勒县| 宜黄县| 米林县| 金塔县| 井陉县| 浑源县| 平利县| 清苑县| 冀州市| 和平区| 泾源县| 陵川县| 平和县| 新龙县| 师宗县| 镇巴县|