Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
检查单击是否无效-java_Java_Click - Fatal编程技术网

检查单击是否无效-java

检查单击是否无效-java,java,click,Java,Click,我正在开发一个游戏,你必须在一个方块网格中配对。现在我只是测试点击,所以当你点击方块时,方块会变成蓝色。我做了一件事,你可以点击一次,再点击一次,他们都会留下来。但是,仅当您再次单击之前单击的位置左侧时,它才起作用。我想这与我如何检查点击以及在哪里有关。我从左上角向下绘制了块,因此左侧的块在数组中的数量较少。而“如果语句”只有更大的检查,所以可能有什么问题??这是我的密码: for(int i = 0; i < 100; i++) { Tiles rect = squar

我正在开发一个游戏,你必须在一个方块网格中配对。现在我只是测试点击,所以当你点击方块时,方块会变成蓝色。我做了一件事,你可以点击一次,再点击一次,他们都会留下来。但是,仅当您再次单击之前单击的位置左侧时,它才起作用。我想这与我如何检查点击以及在哪里有关。我从左上角向下绘制了块,因此左侧的块在数组中的数量较少。而“如果语句”只有更大的检查,所以可能有什么问题??这是我的密码:

for(int i = 0; i < 100; i++) {

        Tiles rect = squares.get(i);

        // x of the rect    // on the clicked
        if(rect.getTileX() + squareWidth > mouseX && rect.getTileY() + squareHeight > mouseY && rect.getTileX() + squareWidth * 2 > mouseX + squareWidth) {

            if(clickNumber == 1) {

                if(change1pressed == false) {

                    changeColor1 = i;

                    System.out.println("1 - 1: " + changeColor1);
                    System.out.println("2 - 1: " + changeColor2);

                    change1pressed = true;

                }

            }

            if(clickNumber == 2) {

                if(change2pressed == false) {

                    changeColor2 = i;

                    System.out.println("1 - 2: " + changeColor1);
                    System.out.println("2 - 2: " + changeColor2);

                    change2pressed = true;

                }

            }

            squares.get(changeColor1).tileColor = Color.BLUE;
            squares.get(changeColor2).tileColor = Color.BLUE;

        }

        g.setColor(squares.get(i).getColor());

        g.fillRect(rect.getTileX(), rect.getTileY(), rect.getTileWidth(), rect.getTileHeight());

    }
for(int i=0;i<100;i++){
Tiles rect=正方形。获取(i);
//在单击的
if(rect.getTileX()+squareWidth>mouseX&&rect.getTileY()+squareHeight>mouseY&&rect.getTileX()+squareWidth*2>mouseX+squareWidth){
如果(clickNumber==1){
if(change1pressed==false){
changeColor1=i;
System.out.println(“1-1:+changeColor1”);
System.out.println(“2-1:+changeColor2”);
change1pressed=true;
}
}
如果(clickNumber==2){
if(change2pressed==false){
changeColor2=i;
System.out.println(“1-2:+changeColor1”);
System.out.println(“2-2:+changeColor2”);
change2pressed=true;
}
}
squares.get(changeColor1).tileColor=Color.BLUE;
squares.get(changeColor2).tileColor=Color.BLUE;
}
g、 setColor(squares.get(i.getColor());
g、 fillRect(rect.getTileX(),rect.getTileY(),rect.getTileWidth(),rect.getTileHeight());
}
请考虑提供一个演示您的问题的示例。这不是一个代码转储,而是您正在做的一个示例,它突出了您所遇到的问题。这将减少混乱和更好的响应。请考虑提供一个演示您的问题的示例。这不是一个代码转储,而是您正在做的一个示例,它突出了您所遇到的问题。这将减少混乱和更好的响应