0

キーイベントに関係するコーディングチュートリアルに従っていて、すべてのコードが正しく見えますが、何らかの理由で修正できないエラーがあります。たぶん私が必要とするのは、それをスキャンして私のエラーを見つけるための別の目だけです。これがコードです。エラーのあるコード行の両側に2つのアスタリスクがあります。エラーは、「;」であることを示しています。(セミコロン)は、「(」と「)」がどこにあるかが予想されます...それはどのように意味がありますか?写真も投稿します。

package com.Bench3.myGame;

import javax.swing.*;
import java.awt.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

public class Keying extends JPanel{

public Rectangle character;

public int charW = 24;
public int charH = 36;

public boolean right = false;
public boolean left = false;

public Keying(Display f, Images i){
    character = new Rectangle(180, 180, charW, charH);

    f.addKeyListener(new KeyAdapter(){
        public void keyPressed(KeyEvent e){
            if(e.getKeyCode() == KeyEvent.VK_D){
                right = true;
            }
            if(e.getKeyCode() == KeyEvent.VK_A){
                left = true;
                }

            **public void keyReleased(KeyEvent e)**{
                if(e.getKeyCode() == KeyEvent.VK_D){
                    right = false;
                }
                if(e.getKeyCode() == KeyEvent.VK_A){
                    left = false;
                }
            }
        }
    });     
}
public void paintComponent(Graphics g){
    super.paintComponent(g);
    this.setBackground(Color.BLACK);
    g.setColor(Color.WHITE);
    g.fillRect(character.x, character.y, character.width, character.height);

    if(right){
        character.x += 1;
    }
    if(left){
        character.x -= 1;
    }
    repaint();
}

} これがエラーです。 それがあなたに感謝するのを助けることを願っています!

4

2 に答える 2

4

前の方法()の中括弧を閉じるのを忘れましたkeyPressed():-

public void keyPressed(KeyEvent e){
        if(e.getKeyCode() == KeyEvent.VK_D){
            right = true;
        }
        if(e.getKeyCode() == KeyEvent.VK_A){
            left = true;
            }
} // missing
于 2012-10-20T05:35:39.080 に答える
2

keyPressed()メソッドが}残っています。

public void keyPressed(KeyEvent e){
        if(e.getKeyCode() == KeyEvent.VK_D){
            right = true;
        }
        if(e.getKeyCode() == KeyEvent.VK_A){
            left = true;
            }
}// you missed `}`
于 2012-10-20T05:36:03.777 に答える