【问题标题】:How to get text through key press in Blackberry如何通过黑莓中的按键获取文本
【发布时间】:2011-12-08 12:22:43
【问题描述】:

我需要在黑莓按键事件中获取按键文本。当用户按下键盘上的键以键入文本时,就会发生这种情况。这怎么可能?

【问题讨论】:

    标签: blackberry keypress


    【解决方案1】:

    你可以通过像这样覆盖 keyChar 来获取按下的键文本

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

    【讨论】:

    • 所以这里基本上你忽略了 ESCAPE 和 ENTER 键。如果用户按下任何其他键,那么 return(super.keyChar(key,status,time)) 究竟返回什么?函数中用作参数的状态和时间是做什么用的?
    • 文档对您有帮助吗?
    • 不多,因为我不太喜欢 BB 开发。我需要做的就是将 BBM 聊天文本保存在文本文件中。这是另一个线程:stackoverflow.com/questions/8173102/…。也许那里的 cmets 可以进一步指导您。谢谢
    【解决方案2】:

    这可以帮助你:

    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中的值了(它是一个String变量你要先声明它)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-20
      • 1970-01-01
      • 2012-09-14
      • 1970-01-01
      相关资源
      最近更新 更多