举例说明实现同一个Display的不同窗口对象之间的切换的两种方法?我正在学习J2ME

 我来答
ffg410
2010-10-10 · TA获得超过1289个赞
知道小有建树答主
回答量:555
采纳率:66%
帮助的人:487万
展开全部
一般在界面类中,因为界面类不是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对象的形式,在界面类中实现切换界面。当然除了该方式以外,需要实现该功能的方式还有很多种,这里只介绍这一种容易理解的实现方式。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式