首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在J2ME中使用抽象方法?

如何在J2ME中使用抽象方法?
EN

Stack Overflow用户
提问于 2011-04-03 17:16:08
回答 1查看 359关注 0票数 0

我实现了一些代码,它有一个画布类型的警报类,并且它有一个keyPress方法,对于使用警报类的每个类,该方法必须工作不同。例如,keyPress方法有两个按钮,每个按钮的功能对于每个类都是不同的!有人能告诉我如何实现它吗?

公共类myAlert扩展了Canvas实现CommandListener{

公共myAlert(Midlet midlet,int width,int height,String str,String left_str,String right_str){ } protected void paint(Graphics g) { g.setColor(0,0,0);g.drawRoundRect(5,180,width-10,height,8,8);g.drawRoundRect(15,185,width-15,height-5,7,7);g.setColor(0xbfd4f6);g.fillRoundRect(0,180,width,height,8,8);/} protected void keyPressed(int keyCode) { switch(keyCode){ case -6: //选择按钮

// break;case -7: //关闭按钮

代码语言:javascript
复制
        break;
}

}}公共类M(){

protected void keyPressed(int keyCode) {

代码语言:javascript
复制
    switch (state) {
 case STATE_INPUT_LEFT:
      // do work for focus on the left
      if (keyCode >= KEY_NUM0 && keyCode <= KEY_NUM9 && digitsEntered < 10) {
        digits_left[digitsEntered] = (char) ('0' + (keyCode - KEY_NUM0));
        digitsEntered++;
        repaint();
        if(digitsEntered>=8){
         state=STATE_INPUT_RIGHT;
            m= new myAlert(midlet,w, 150,"Ok " ,"exit",”system”);

//我希望如果用户点击Ok按钮,主页必须显示给用户Display.getDisplay(midlet).setCurrent( m);break;} Public class N(){ public void commandAction(Command c,Displayable d) { String label = c.getLabel();if(label.equals("Exit")){ midlet.exit();} else if(label.equals("Enter")){ m= new myAlert(midlet,w,150,“yes”,“No”,“Print”);//我希望如果用户点击ok,另一条消息将显示给用户Display.getDisplay(midlet).setCurrent( m);

代码语言:javascript
复制
}
}

这是我的代码的一部分!正如你在M类和N类中看到的,Alert类的左键的功能是不同的!现在你能帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2011-04-03 17:24:23

在父对象中,让处理程序检测特定的按钮并委托给两个单独的抽象方法。在子对象中,实现这些方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5528670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档