これを間違った場所 ( GameDev
) に投稿したのですが、そこで応答がありませんでした。というわけで、ここに再掲します。
アプレット ゲームを作成しています。レンダリング中です。ゲーム ループは実行中です。アニメーションは更新中ですが、キーボード入力が機能しません。これがSSCCEです。
public class Game extends JApplet implements Runnable {
public void init(){
// Initialize the game when called by browser
setFocusable(true);
requestFocus();
requestFocusInWindow(); // Always returning false
GInput.install(this); // Install the input manager for this class
new Thread(this).start();
}
public void run(){
startGameLoop();
}
}
そして、これが GInput クラスです。
public class GInput implements KeyListener {
public static void install(Component c){
new GInput(c);
}
public GInput(Component c){
c.addKeyListener(this);
}
public void keyPressed(KeyEvent e){
System.out.println("A key has been pressed");
}
......
}
これは私の GInput クラスです。アプレットとして実行すると動作せず、Game クラスをフレームに追加すると正常に動作します。
ありがとう
今解決しました。私の解決策を見る