0

我正在使用 LWUIT(Midlet 移动应用程序)开发一个项目。当我按数字键时,将打开一个对话框。当我按下键 #,0,* 对话框应该关闭。
我正在使用Dialog.dispose()关闭对话框的方法。但它不起作用。下面是我的代码。谁能告诉我我的代码有什么问题?

public class javaForm extends Component implements ActionListener
{

Dialog d=new Dialog();


public void keyPressed(int key){

     System.out.println("Key pressed :"+key);

            switch(key)
            {


                case 48:
                    d.show(130,20,30,30,true);
                    break;
                case 49:
            d.show(130,20,30,30,true);
                    break;
                case 50:
            d.show(130,20,30,30,true);
                    break;
                case 51:
             d.show(130,20,30,30,true);
                    break;
                case 52:
             d.show(130,20,30,30,true);
                    break;
                case 53:
            d.show(130,20,30,30,true);
                    break;
                case 54:
            d.show(130,20,30,30,true);
                    break;
                case 55:
             d.show(130,20,30,30,true);
                    break;
                case 57:
                    d.show(130,20,30,30,true);
                    break;
                case 56:
                     d.show(130,20,30,30,true);
                      break;
                case 42:
            d.dispose();
                        break;
                case 35:
                        d.dispose();
                        break;
                default:
                       d.dispose();
                       break;
            }

}

public void actionPerformed(ActionEvent ae) 

{

 throw new UnsupportedOperationException("Not supported yet.");

}

}

实际上 javaForm 是一个使用LWUIT开发的 java 程序,我在 MIDLET 中调用这个 javaForm 即 javaForm1。我包括了所有必要的软件包。

4

1 回答 1

2

你为什么不使用Form.addGamekeyListener()

将 放入gameKeyListener您(在中Form扩展),然后在捕获密钥中使用并关闭.ActionListenerFormactionPerformed(ActionEvent ae)ae.getKeyEventDialog

将 GameKeys 映射为Canvas. 例如:Canvas.FIRE

于 2012-01-11T16:30:26.940 回答