2012-02-24 2 views
0

첫 번째 문제는 addKeyListener가 내가 배치 한 곳마다 redlined된다는 점입니다. 나는 여러 가지 다른 예를 온라인에서 보았다. 그러나 Im가 무엇인가 놓치고있는 것처럼 보인다.ESCAPE 키를 눌렀을 때 KeyPressed 함수에 액세스 할 수 없습니다.

+0

_addKeyListener가 redlined_입니까? 해당 문장을 추가 할 때 코드가 컴파일되지 않습니다. – gnat

+0

예, 저는 라인이 오류라고 봅니다. – Glenncito

답변

1

addKeyListener(KeyListener l)javax.microedition.midlet.MIDlet 또는 net.rim.device.api.system.KeyListener의 방법이 아닙니다 그것은 정의되지 않은, 그래서 당신은 당신의 BBMIDLET 클래스에서 다른 곳을 선언하지 않았다 사전에

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."); 
    } 
} 
} 

감사 :

여기 내 코드입니다.

+0

그럼 어떻게 정의하겠습니까? – Glenncito

+2

'addKeyListener'를 호출 할 수있는 일종의 GUI 컴포넌트를 얻거나 생성해야합니다. 저는 모바일 개발에 익숙하지 않지만 [java.awt.Component] (http://docs.oracle.com/javase/6/docs/api/java/awt)를 확장하는 모든 구성 요소가 될 표준 Java 응용 프로그램에 대해서는 경험이 없습니다. /Component.html). – ughzan

관련 문제