2011-12-07 2 views

答えて

1

あなたはこれがあなたを助け、この

public boolean keyChar(char key, int status, int time) 
{ 
    if (key == Characters.ESCAPE) 
    { 
     int result = Dialog.ask(Dialog.D_YES_NO,"Are you sure you want to exit?"); 
     if (result == Dialog.YES) { 
      closePopup(); 
     } 
     return(true); 
    } 
    else 
    if (key == Characters.ENTER) 
    { 
     processLocation(); 
     return(true); 
    } 
    else 
    { 
     //the pressed key is key 
     return(super.keyChar(key,status,time)); 
    } 
} 
+0

ここでは、基本的にESCAPEキーとENTERキーを省略しています。ユーザーが他のキーを押した場合、戻り値(super.keyChar(key、status、time))は正確に何を返しますか?関数のパラメータとして使用されるステータスと時間は何ですか? –

+0

こちらのドキュメントをご覧くださいhttp://www.blackberry.com/developers/docs/5.0.0api/net/rim/device/api/ui/Screen.html – rfsk2010

+0

ドキュメントが役立ちましたか? – rfsk2010

1

のようには、keyCharをオーバーライドすることにより、押されたキーのテキストを取得することができます

protected boolean keyChar(char ch, int status, int time) 
{ 
    if(ch == Characters.ESCAPE || ch == Characters.ENTER) 
    { 
     //Nothing to do; 
    } 
    else 
    { 
     pressedKey=pressedKey+ch; 
    } 
    return super.keyChar(ch, status, time); 
} 

が次にあなたがpressedKeyの値を取得することができます(これは文字列変数です最初に宣言しなければなりません)。

関連する問題