1

x 値と y 値を負の値に変換して画面から画像を削除することをテストしようとしています (私の画面は 500 x 500 で、サイズを変更できません)。 x と y の値を正の値に戻してから、それらを負の値に戻して再び削除できるようにします。

あるクラス (画面上に赤いポインタが表示され、他のアイテムの境界に移動できます) には、次のようなものがあります。

import java.awt.Rectangle;
public void checkBoundariesTouching() {
    NextSlide next = MainFrame.getSlide();

    for (int i = 0; i < 1; i++) {
        if (getBounds().intersects(next.getBounds())) {
            MainFrame.slide += 1;

私のメインフレームでは、このスライドの増加によって背景が変更され、スライドが面白くなり、表示される文章が変更されます。

黒い四角形を生成する別のクラスがあり、それを 1 つずつ削除して、箇条書きの箇条書きを明らかにし、それについて説明します。次のように長方形を削除します。

import java.awt.Rectangle;
public class BlackRectangle extends Entity {

public BlackRectangle(int x, int y) {
    super(x, y);

}    
public void update() {
    int slide = MainFrame.getSlide();
    checkBoundariesTouching();
    if (slide >= 2) {
        if (x < 0) {
            x = -x;
        }
        if (y < 0) {
            y = -y;
        }
        checkBoundariesTouching();
    }
}

public void checkBoundariesTouching() {

    Pointer pointer = MainFrame.getPointer();
    NextSlide next = MainFrame.getSlide();
    if (getBounds().intersects(pointer.getBounds())) {
        x = -x;
        y = -y;


    }

スライドが 1 の場合、問題なく黒い四角を削除できます。ただし、ポインターが黒い四角形に触れているときに次のスライド (スライド 2 以降) に移動すると、画面から外れますが、ポインターを離すと、黒い四角形が戻って情報を覆います。更新方法を変更するだけなので、このコードを修正する方法はありますか?

4

3 に答える 3