回覆列表
  • 1 # 藍風24

    一般在介面類中,因為介面類不是MIDlet的子類,所以需要獲得Display物件有兩個方法:

    1、 傳遞MIDlet型別的物件

    2、 傳遞Display型別的物件

    下面就以傳遞Display物件為例來實現在介面類中進行切換。下面的程式為了簡單起見,以兩個Canvas介面為例來演示實際的傳遞,高階介面和這個使用完全一樣。

    MIDlet中的程式碼實現:

    Display display;

    public MyMIDlet(){

    display = Display.getDisplay(this);

    //建立需要顯示的介面物件

    FirstCanvas fc = new FirstCanvas(display);

    //顯示介面

    display.setCurrent(fc);

    }

    第一個介面類的程式碼實現:

    public class FirstCanvas extends Canvas{

    Display display;

    public FirstCanvas(Display display){

    this.display = display;

    }

    /**繪製方法*/

    public void paint(Graphics g){

    g.drawString(“第一個介面”,30,40,Graphics.TOP | Graphics.LEFT);

    }

    /**事件處理*/

    public void keyPressed(int keyCode){

    display.setCurrent(new SecondCanvas(display)); //顯示下一個介面

    }

    }

    第二個介面類的程式碼實現和上一個類似:

    Display display;

    public SecondCanvas(Display display){

    this.display = display;

    }

    上面的程式碼演示瞭如何使用傳遞Display物件的形式,在介面類中實現切換介面。當然除了該方式以外,需要實現該功能的方式還有很多種,這裡只介紹這一種容易理解的實現方式。

  • 中秋節和大豐收的關聯?
  • 多行不義必自斃指的是哪個皇帝?