(p5element).mouseWheel

(別名: (p5element).mouse_wheel)

def setup
  createCanvas(100, 100)
  background(0)
  button = createButton('Action')
  button.position(0, 0)
  button.mouseWheel do |delta|
    if delta > 0
      @d += 10
    else
      @d -= 10
    end
    @d = constrain(@d, 10, 100)
    @g = rand(255)
    false
  end
  @g = 220
  @d = 50
end

def draw
  background(@g)
  ellipse(width / 2, height / 2, @d, @d)
end

p5.jsリファレンス(参考情報)

[p5.js] (p5.Element.obj).mouseWheel

概要

HTML要素上でマウスホイールイベントが検出されたときに実行する処理を登録します。

書式

obj.mouseWheel([void]) do |delta| ... end

引数

引数名内容備考オプションデフォルト値
void無効化falseが指定された場合にはブロックは実行されないnil
...ブロック実行される処理

戻値

なし

備考

・p5.jsではブロック引数として event(マウスイベント)を受け取りますが、
 rbCanvas/p5では delta(マウスホイールの移動量)を受け取ります。
 ただし、ブロック引数 deltaが不要な場合は省略しても構いません。

・ブラウザに関連付けられている標準的なマウスホイールイベントの動作を抑止するためには、
 ブロックの末尾に「false」を記述して falseを返すようにしてください。
 (ブロック内なので returnを使うことはできません)

関連

(p5element).mouseClicked
(p5element).doubleClicked
(p5element).mousePressed
(p5element).mouseReleased
(p5element).mouseMoved
(p5element).mouseOver
(p5element).mouseOut
def mouseWheel
Native