-4

マウスが近づくと 2D ボールが動き回るコードを書き込もうとしていますが、うまくいきません。(私は長い間プログラミングをしていません..)現在のコードは次のとおりです。

import java.awt.Color;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import acm.graphics.*;
import acm.program.*;



@SuppressWarnings("serial")
public class MoveAway extends GraphicsProgram implements MouseMotionListener {

static int width;
static int height;
int x = 100;
int y = 100;
GOval runaway;


public void main(){
    System.out.println("Movement Detected");
    System.out.println("Stop Moving!");
    width = getSize().width;
    height = getSize().height;
    addMouseMotionListener(this);

}

public void run() {
    System.out.println(width);
    System.out.println(height);
    GOval runaway = new GOval(50, 50);
    runaway.setColor(Color.blue);
    runaway.setFilled(true);
    add(runaway);
    runaway.setLocation(x, y);

}
public void mouseMoved(MouseEvent e) {
    System.out.println("test");
    if(x - e.getX() > -50  && y - e.getY() > -50) {
        runaway.setLocation(x - 1, y - 1);
        y = y - 1;
        x = x - 1;
        System.out.println("Close!");
    }

    if(x - e.getX() < 50 && y - e.getY() < 50){
        runaway.setLocation(x + 1, y + 1);
        y = y +1;
        x = x - 1;
        System.out.println("Close!");
    } 
}
}

これらのいくつか (またはほとんど) は、非常に明白な超初心者向けのものかもしれませんが、その方法はわかりません。

4

2 に答える 2

1

main メソッドを使用してプログラムを実行する必要があります。現在、まったく使用していないメソッドがいくつかあるようです(実行)

于 2013-07-09T19:56:54.723 に答える