[OK]を、私はどのようにボールからアプレットを使用してボールを移動するには?Javaアプレット - 画面上でボールを移動する
私は今までこのコードを持っていますが、何もしません。
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class KeyboardGame extends Applet implements KeyListener
{
private static final long serialVersionUID = 1L;
private static boolean keyboadrRightPressed = false;
public void init()
{
addKeyListener(this);
}
public void keyPressed(KeyEvent e)
{
int keyCode = e.getKeyCode();
if(keyCode == KeyEvent.VK_RIGHT)
{
keyboadrRightPressed = true;
}
else
{
keyboadrRightPressed = false;
}
}
public void keyReleased(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
}
public void paint(Graphics g)
{
g.fillOval(20,20,20,20);
g.drawString("String :"+keyboadrRightPressed,20,30);
}
}
また、どのように動作するのか理解しておく必要があります。なぜ私のアクションリスナーはうまくいかないのですか?
while(true)
またはスレッド?
私は実際にそれが最初に少しホールドしていることを見たボールは1ピクセル移動し、連続的に移動するまで0.5秒待って、私の問題を解決するためにスレッドを使用する必要がありますか? – Master345
キーボードイベントが動作するため、そこに一時停止があります。テキストエディタで入力することを考えるとき、 'a'キーを押し続けると、1つ入力し、しばらくポーズしてから、aの束を追加し始めます。そう、はい、私はあなたがその少しの遅れを得ないように一貫した間隔で実行することができるスレッドを使用します。 repaint()関数呼び出しを実際にボールを動かしているスレッドに移動して、ボールが移動したときに再描画し、キーが押されたときには再描画しないようにすることもできます。 – aoi222
おかげさまで、もし私がもっと質問したら、あなたに尋ねます – Master345