画面操作 - マウス
マウスホイールの情報を取得したい
FormクラスのMouseWheelイベントを利用し、マウスホイールの情報を取得する事が可能です。
【MouseWheelイベントのEventオブジェクトから取得できる値】
shiftKey
:
Shiftキーが押されている場合はtrue、それ以外はfalse
ctrlKey
:
Ctrlキーが押されている場合はtrue、それ以外はfalse
leftButton
:
マウスの左ボタンが押されている場合はtrue、それ以外はfalse
rightButton
:
マウスの右ボタンが押されている場合はtrue、それ以外はfalse
xPos
:
マウスポインタのx座標
yPos
:
マウスポインタのy座標
delta
:
マウスホイールの回転量
上方向の回転はプラス値、下方向の回転はマイナス値
MouseWheelイベントはUseMouseWheelプロパティへ設定する値によって、イベントの発生するタイミングが異なります。
【UseMouseWheelプロパティへ設定する値】
WHEEL_STD
:
MouseWheelイベントは発生しません
WHEEL_LEFTCLICK
:
マウスの左ボタンを押している間、MouseWheelイベントが発生します
WHEEL_RIGHTCLICK
:
マウスの右ボタンを押している間、MouseWheelイベントが発生します
WHEEL_SHIFTKEY
:
キーボードのShiftキーを押している間、MouseWheelイベントが発生します
WHEEL_CTRLKEY
:
キーボードのCtrlキーを押している間、MouseWheelイベントが発生します
WHEEL_ANYTIME
:
全ての状態でMouseWheelイベントを発生します
サンプルコードでは、MouseWheelイベントを利用してマウスホイールの回転量(delta)を取得し、Buttonオブジェクトの拡大/縮小処理を実行しています。
マウスホイールを操作するとButtonオブジェクトの拡大縮小が行われます。
マウスホイール操作時の倍率は「現在の倍率」へ表示されます。
Form form1 { width = 800; height = 600; Label Label1 { X = 18; y = 44; Width = 87; Height = 21; Value = "現在の倍率 :"; VerticalAlign = ALIGN_MIDDLE; } Label Label2 { X = 105; y = 44; Width = 36; Height = 21; Value = 1; VerticalAlign = ALIGN_MIDDLE; HorizontalAlign = ALIGN_MIDDLE; Font = new Font("Meiryo UI",10, $True, $False, $False, $False); } Label Label3 { X = 142; y = 44; Width = 30; Height = 21; Value = "倍"; VerticalAlign = ALIGN_MIDDLE; } Form form2 { X = 18; y = 73; Width = 383; Height = 258; BgColor = new Color("GREEN"); UseMouseWheel = WHEEL_ANYTIME; Button Button1 { x = 6; y = 4; width = 180; height = 46; resize = RESIZE_KEEPRATIO; title = "ボタン1"; setFocus(); } Function OnMouseWheel( e ) { var scale; /* e.deltaはホイールの回転量、上方向なら+、負方向なら- */ /* ホイールが上方向に動かされたらスケールを0.1拡大、逆なら0.1縮小 */ if(e.delta > 0){ scale = Math.round(HorizontalScale + 0.1,1); }else if(e.delta < 0){ scale = Math.round(HorizontalScale - 0.1,1); } try{ /* スケールをそれぞれのプロパティに設定 */ HorizontalScale = scale; VerticalScale = scale; FontScale = scale; } catch(e){ MessageBox("0以下、10以上の倍率は指定できません"); } form1.Label2.Value = scale; } } }
Biz-Collections Bizの宝箱 トップへ
Biz/Browser DT・Biz/Designer DT TIPS集 トップへ