更新:2024/09/06
Processingのマウス関連の処理


はるか
Processingでクリック処理ってどうやる?

ふゅか
クリックにもいろいろあるのよ
Processingのマウス関連の処理について解説します。
目次
1. マウス関連の処理
1.1. mouseClicked
マウスがクリックされた瞬間に一度だけ実行される処理を記述します。mouseX, mouseYとはマウスの現在のX座標とY座標を表すあらかじめ用意されている変数です。
void setup() {
size(400, 400);
background(255);
}
void draw(){
}
void mouseClicked() {
fill(0);
ellipse(mouseX, mouseY, 20, 20);
}
1.2. mouseDragged
マウスがドラッグされている間、連続して実行される処理を記述します。「マウスがドラッグされている間」というのは、マウスボタンが押された状態でマウスを移動している状況を指します。
void setup() {
size(400, 400);
background(255);
}
void draw(){
}
void mouseDragged() {
ellipse(mouseX, mouseY, 10, 10);
}
1.3. mouseReleased
マウスボタンが離されたときに実行される処理を記述します。わからない場合は、長押ししてみてください。
void mousePressed() {
fill(255);
ellipse(mouseX, mouseY, 50, 50);
}
1.4. mousePressed
マウスボタンが押されたときに実行される処理を記述します。
void setup() {
size(400, 400);
background(255);
}
void draw(){
}
void mousePressed() {
fill(255);
ellipse(mouseX, mouseY, 50, 50);
}
2. mouseReleasedとmouseClickedの違い

はるか
mouseReleasedとmouseClickedって結局何が違う?

ふゅか
似ているけど結構違うのよ
mouseClickedはクリックの動作が同じ座標である。一方、mouseReleasedはクリックした後にマウスを動かしてもプログラムは実行されます。次のコードを使って試してみましょう。
2.1. mouseClicked
void setup() {
size(400, 400);
background(255);
}
void draw(){
}
void mouseClicked() {
fill(0);
ellipse(mouseX, mouseY, 20, 20);
}
2.2. mouseReleased
void setup() {
size(400, 400);
background(255);
}
void draw(){
}
void mouseReleased() {
fill(0);
ellipse(mouseX, mouseY, 20, 20);
}
PR