我按下ESCAPE键时无法访问KeyPressed功能

时间:2012-02-24 01:03:38

标签: blackberry netbeans java-me

第一个问题是addKeyListener在我放置它的地方都会被修改。我在网上看过各种不同的例子,但似乎我错过了一些东西。

这是我的代码:

import net.rim.device.api.system.KeyListener;
import net.rim.device.api.ui.Keypad;

public class BBMIDLET extends javax.microedition.midlet.MIDlet implements KeyListener

    public void startApp() {
    Display.init(this); 

   addKeyListener(new TestKeyPadListener());    

    }

    public class TestKeyPadListener implements KeyListener {

    public boolean keyChar(char key, int status, int time) {
        System.out.println("key: " + key);
        return false;
    }

    public boolean keyDown(int keycode, int time) {
        System.out.println("keycode: " + keycode);
        if (Keypad.key(keycode) == Keypad.KEY_ESCAPE) {
            System.out.println("Hi");
            return false;
        }
        return true;
    }

    public boolean keyUp(int keycode, int time) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    public boolean keyRepeat(int keycode, int time) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    public boolean keyStatus(int keycode, int time) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
}
}

提前致谢

1 个答案:

答案 0 :(得分:1)

addKeyListener(KeyListener l)不是javax.microedition.midlet.MIDletnet.rim.device.api.system.KeyListener的方法,您没有在BBMIDLET类的其他位置声明它,因此未定义。