• 締切済み

キーボードのアクション

スタートボタンでtimerをスタートさせ、 キーボードの「↑」ボタンを押すとFrame上の○がジャンプをする。 というプログラムを作りたいのですができません。 エラーが出てしまいます。どうしてででしょうか? ActionListenerのところのソースは public void actionPerformed (ActionEvent e) { //記録開始ボタンが押された if(e.getSource() == StartB) { timer.start(); } //キーボード読み込み com = e.getActionCommand(); if(com.equals("jump")) { //ジャンプの状態へ State = 1; } //再描写 repaint(); } です。

みんなの回答

  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.2

NullPointerExceptionは if(com.equals("jump")) この行かしら? jumpがどこから来たのか不明だけど・・・。 とりあえず KeyListener というインターフェースが存在することを 教えてあげるわ。

  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

> エラーが出てしまいます まずはエラーの内容を書きましょう。 それからね。

mmmmmmkn
質問者

お礼

すみません。。。 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at Main.actionPerformed(Main.java:145) at javax.swing.Timer.fireActionPerformed(Unknown Source) at javax.swing.Timer$DoPostEvent.run(Unknown Source) at java.awt.event.InvocationEvent.dispatch(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source) というのがでてしまいます。