0

ブール型のcanclickマウス変数を使用して一時的に無効にしていますがmouse listener、再度有効にすると、mouse listenerクリックした場所が記憶されるようです。

class MouseHelper extends MouseAdapter
{
    public void mouseClicked(MouseEvent e)
    {
        if(!canclick)
        {
            return;
        }

        int a=e.getX();
        int b=e.getY();
        if(a>=473&&a<=502&&b>=139&&b<=153&&start==true)
        {
            runonce=1;
            repaint();
            start=false;
        }

したがって、これは、正しい画面の表示が完了した後、 canclick を false に設定して、にリセットcanclickする場所trueです。

    if(runonce==2)
    {
        canclick=false;
        System.out.println("Set as false");
        g.setFont(new Font("TimesRoman",Font.BOLD,40));
            g.drawString("Correct!",325,250);
        try {
        Thread.sleep(10000);
            } catch(InterruptedException ex) {
         Thread.currentThread().interrupt();
        }
        runonce=1;
    }
    if(runonce==1)
    {
        g.setFont(new Font("Arial",Font.BOLD,10));
        g.setColor(Color.WHITE);
            g.fillRect(0,0,1000,1000);
        drawboxes(g);
        says();
        s=10;
        g.setColor(Color.BLACK);
        g.drawString(colr.get(colr.size()-1),401,s);
        count=Integer.toString(level+1);
        g.drawString("Level:"+count,401,s+10);
        canclick=true;

    }

}

私の問題は、 が に設定されている正しい画面でクリックすると、canclickが再び true に設定されfalseたときに、クリックしたすべての場所が記憶されることです。canclick

4

1 に答える 1