1

跳ねるボールを描くプログラムを書いています。ユーザーは画面上に長方形を描くことができ、ボールは長方形から跳ね返ります。mousePressed でフラグが true に設定され、フラグが true である限り、(mouseDragged を使用して) 始点から現在の点まで四角形が描画されます。フラグは、mouseReleased で false に設定されます。mouseClicked を使用して、クリックされた四角形を消去します (存在する場合)。私が遭遇している問題は、mouseClicked、mousePressed、および mouseReleased の両方が呼び出されることです。そうならないようにする方法はありますか?

4

2 に答える 2

2

内部には、マウスが長方形の中で押されmousePressed()ているかどうかのチェックがありますか?? 使用しているのと同じ関数を使用します。マウスをクリックして長方形が存在するかどうかを確認します。

このチェックが true の場合、drawRectangleFlag を true に設定しないでください

参考までに、長方形の中に長方形を描きたい場合、上記の解決策は無効です

于 2012-11-04T19:56:23.807 に答える
0

mousePressed をチェックして、マウスが長方形の内側で押されたかどうかを確認できます。押されている場合は、フラグを設定しないでください。

于 2012-11-04T19:42:44.087 に答える