日期:2014-05-20  浏览次数:20597 次

NOKIA E52 左右软键的问题
J2ME程序跑在NOKIA E52上,Canvas全屏模式,左右软键没有响应(KeyPressed事件中),也读不出键值,模拟器上正常。
KeyPressed事件大概是这么写的:

String showStr = "";
//.....
//Canvas的Graphic在外面已定义为g

public void paint(Graphics g)
{
    g.setColor(0,0,0);
    g.drawString(showStr,0,100,Graphics.TOP|Graphics.LEFT);
}

public void KeyPressed(int key)
{
    showStr="("+key+")"+getKeyName(key);
    repaint();
}
其他键都正常,就是左右软键不识别。
敢问各位牛人怎么解决,最好不要使用nokia自己的包。
------解决方案--------------------

 
public void KeyPressed(int key)
{
   // showStr="("+key+")"+getKeyName(key);
    showStr="("+key+")";// 不调用getKeyName方法试试

    repaint();
}

 

------解决方案--------------------
找出E52左右软键的键值
------解决方案--------------------
就是因为不响应按键,所以看不到键值啊。
不调用getKeyName效果没有改观。(其他按键,除功能键都识别,偏偏左右软键不响应)
------解决方案--------------------
该回复于2012-02-06 09:13:25被版主删除
------解决方案--------------------
keyPressed(int key) 你的字母写错了吧?
------解决方案--------------------
那个无关大雅,就是表示一下程序的结构
------解决方案--------------------
看下Canvas是不是添加有Command或监听了CommandListener
------解决方案--------------------
你要得到键值,直接用key就可以了吧,一般是-6和-7
------解决方案--------------------
引用:
keyPressed(int key) 你的字母写错了吧?


+1
------解决方案--------------------
我也碰到这个问题了,怎么办啊?我也怀疑是command监听问题,因为中央按键也不管用,可是我没添加commandlistener啊!!!