こんにちは
、単純な j2me 電卓を書いています。インターフェイスの基礎としてGameCanvasクラスを使用します。カーソルを移動するために、テンキー キー イベントとゲーム関連のイベント ( UP、DOWN、FIREなど) の両方を処理する必要があります。問題は、エミュレーターも私のソニー・エリクソンも、テンキーやゲーム関連のイベントを受信しないことです。たとえば、SOFT1、SEND、2、4、ASTERISKキーが押されたイベントを取得しますが、 1、3、LEFT、RIGH、UP、DOWNを受け取りません。FIREイベント。
class CalculatorCanvas extends GameCanvas
{
public CalculatorCanvas() throws java.io.IOException
{
super(true);
setFullScreenMode(true);
cursor = new Sprite(Image.createImage("/cursor.png"));
}
public void paint(Graphics g)
{
g.setColor(0);
g.fillRect(0, 0, getWidth(), getHeight());
cursor.paint(g);
}
protected void keyPressed(int keyCode)
{
System.out.println("keyPressed: " + getKeyName(key));
if (keyCode == getKeyCode(RIGHT))
cursor.move(STEP, 0);
if (key == getKeyCode(LEFT))
cursor.move(-STEP, 0);
/*...*/
repaint();
}
private final int STEP = 3;
private Sprite cursor;
}
このすべてのイベントを受け取るにはどうすればよいですか?
前もって感謝します
PSキャンバス( GameCanvasの基本クラス)がこのすべてのイベントを受け取ることがわかりましたが、 GameCanvas を使用する必要があります