public class MouseWheelEvent extends MouseEvent
ホイールマウスは、中央ボタンの代わりにホイールを持つマウスです。このホイールはユーザーの方向またはその反対方向に回転させることができます。マウスホイールは (ほかの使用方法もありますが) 主にスクロールするために使用されます。
MouseWheelEvent オブジェクトは、コンポーネントの addMouseWheelListener
メソッドを使って「関連する」マウスイベントを受け取るように登録されているすべての MouseWheelListener
オブジェクトに渡されます。各リスナーオブジェクトは、マウスイベントを含む MouseEvent
を取得します。
マウスホイールがスクロールする Component と関係が深いため、MouseWheelEvents はほかの MouseEvents とは多少異なった形で送信されます。これは、ほかの MouseEvents が通常はマウスカーソルのすぐ下にある Component の変更に影響を与える (たとえば、ボタンをクリックした場合) のに対して、MouseWheelEvents は多くの場合マウスカーソルに影響しないためです (ScrollPane の Component 上でホイールを動かすと ScrollPane の Scrollbar の 1 つがスクロールするはずです)。
MouseWheelEvents はマウスカーソルの下にある Component からイベントの送信を開始します。その Component で MouseWheelEvents が有効でない場合、イベントは MouseWheelEvents が有効になっている最初の祖先 Container に送信されます。これは通常、ホイールスクロールが有効になっている ScrollPane です。ソース Component および x、y 座標は、イベントの最終送信先 (ScrollPane) を基準にします。これにより、ScrollPane を変更せずに複雑な GUI をインストールし、すべての MouseWheelEvents を ScrollPane に送信してスクロールできます。
一部の AWT Component は、独自のスクロールバーを表示して独自のスクロールを操作するネイティブウィジェットを使って実装されます。これが true である Component は、プラットフォームごとに異なります。マウスホイールがこのような Component のいずれかの上を動くと、イベントは直接ネイティブウィジェットに送信され、祖先には伝達されません。
プラットフォームは、マウスホイールが動いたときに発生するスクロール量のカスタマイズを提供します。もっとも一般的な 2 つの設定は、一定数の「ユニット」 (一般的には、テキストベースコンポーネント内のテキスト行)、または「ブロック」全体 (Page Up や Page Downに似ている) のスクロールです。MouseWheelEvent は、基本となるプラットフォーム設定に準拠するためのメソッドを提供します。ユーザーは、これらのプラットフォーム設定をいつでも変更できます。MouseWheelEvents は最新の設定を反映します。
MouseWheelEvent
クラスには、何回の「クリック」でマウスホイールが回転したかを取得するメソッドが含まれます。getWheelRotation()
メソッドは、マウスホイールが回転したノッチ数に対応する「クリック」数 (integer) を返します。このメソッドに加えて、MouseWheelEvent
クラスは、部分回転が発生した場合の「クリック」数 (double) を返す getPreciseWheelRotation()
メソッドを提供します。getPreciseWheelRotation()
メソッドは、ノッチなしで自由に回転するホイールなどの高解像度ホイールをマウスがサポートしている場合に便利です。アプリケーションには、このメソッドを利用することでマウスホイールイベントを正確に処理できるという利点があり、視覚的に滑らかにできます。
修飾子と型 | フィールドと説明 |
---|---|
static int |
WHEEL_BLOCK_SCROLL
「ブロック」単位のスクロール (Page Up キー、Page Down キーによるスクロールなど) を表す定数です。
|
static int |
WHEEL_UNIT_SCROLL
「ユニット」単位のスクロール (矢印キーによるスクロールなど) を表す定数です。
|
BUTTON1, BUTTON2, BUTTON3, MOUSE_CLICKED, MOUSE_DRAGGED, MOUSE_ENTERED, MOUSE_EXITED, MOUSE_FIRST, MOUSE_LAST, MOUSE_MOVED, MOUSE_PRESSED, MOUSE_RELEASED, MOUSE_WHEEL, NOBUTTON
ALT_DOWN_MASK, ALT_GRAPH_DOWN_MASK, ALT_GRAPH_MASK, ALT_MASK, BUTTON1_DOWN_MASK, BUTTON1_MASK, BUTTON2_DOWN_MASK, BUTTON2_MASK, BUTTON3_DOWN_MASK, BUTTON3_MASK, CTRL_DOWN_MASK, CTRL_MASK, META_DOWN_MASK, META_MASK, SHIFT_DOWN_MASK, SHIFT_MASK
COMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWN
ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK
source
コンストラクタと説明 |
---|
MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation)
指定されたソースコンポーネント、タイプ、修飾子、座標、スクロールタイプ、スクロール量、およびホイール回転で、
MouseWheelEvent オブジェクトを構築します。 |
MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation)
指定されたソースコンポーネント、タイプ、修飾子、座標、絶対座標、スクロールタイプ、スクロール量、およびホイール回転で、
MouseWheelEvent オブジェクトを構築します。 |
MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation, double preciseWheelRotation)
指定されたソースコンポーネント、タイプ、修飾子、座標、絶対座標、スクロールタイプ、スクロール量、およびホイール回転で、
MouseWheelEvent オブジェクトを構築します。 |
修飾子と型 | メソッドと説明 |
---|---|
double |
getPreciseWheelRotation()
マウスホイールを回転させた「クリック」数を double 値として返します。
|
int |
getScrollAmount()
マウスホイール回転のクリックごとにスクロールされるユニット数を返します。
|
int |
getScrollType()
このイベントに応答して発生するスクロールのタイプを返します。
|
int |
getUnitsToScroll()
プラットフォーム設定に準拠する量で ScrollPane または JScrollPane をスクロールする一般的な MouseWheelListener の実装に役立つ便利なメソッドです。
|
int |
getWheelRotation()
マウスホイールを回転させた「クリック」数を整数として返します。
|
String |
paramString()
このイベントを特定するパラメータ文字列を返します。
|
getButton, getClickCount, getLocationOnScreen, getModifiersEx, getMouseModifiersText, getPoint, getX, getXOnScreen, getY, getYOnScreen, isPopupTrigger, translatePoint
consume, getMaskForButton, getModifiers, getModifiersExText, getWhen, isAltDown, isAltGraphDown, isConsumed, isControlDown, isMetaDown, isShiftDown
getComponent
getSource
public static final int WHEEL_UNIT_SCROLL
getScrollType()
、定数フィールド値public static final int WHEEL_BLOCK_SCROLL
getScrollType()
、定数フィールド値public MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation)
MouseWheelEvent
オブジェクトを構築します。
絶対座標 xAbs と yAbs は、画面上のソースの位置に相対座標 x と y を加算した値に設定されます。ソースが表示されていない場合、xAbs と yAbs は 0 に設定されます。
無効な id
を渡すと、未指定の動作になります。このメソッドは source
が null
の場合に IllegalArgumentException
をスローします。
source
- イベントを発生させた Component
id
- イベントを特定する整数when
- イベントの発生時間を渡す long 値modifiers
- イベント発生時に押された修飾キー (Shift、Ctrl、Alt、Meta)x
- マウス位置の x 座標 (水平方向)y
- マウス位置の y 座標 (垂直方向)clickCount
- イベントに関連付けられたマウスクリックの回数popupTrigger
- boolean 型。このイベントがポップアップメニューのトリガーの場合は truescrollType
- このイベントに応答して発生するスクロールのタイプ。有効な値は WHEEL_UNIT_SCROLL
および WHEEL_BLOCK_SCROLL
scrollAmount
- scrollType が WHEEL_UNIT_SCROLL
の場合、スクロールされるユニット数wheelRotation
- マウスホイールを回転させた「クリック」数 (整数)IllegalArgumentException
- source
が null である場合MouseEvent.MouseEvent(java.awt.Component, int, long, int, int, int, int, boolean)
, MouseEvent.MouseEvent(java.awt.Component, int, long, int, int, int, int, int, int, boolean, int)
public MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation)
MouseWheelEvent
オブジェクトを構築します。
無効な id
を渡すと、未指定の動作になります。このメソッドは source
が null
の場合に IllegalArgumentException
をスローします。
コンストラクタに渡された相対座標と絶対座標の値が矛盾している場合でも MouseWheelEvent インスタンスは作成され、例外はスローされません。
source
- イベントを発生させた Component
id
- イベントを特定する整数when
- イベントの発生時間を渡す long 値modifiers
- イベント発生時に押された修飾キー (Shift、Ctrl、Alt、Meta)x
- マウス位置の x 座標 (水平方向)y
- マウス位置の y 座標 (垂直方向)xAbs
- マウス位置の絶対 x 座標 (水平方向)yAbs
- マウス位置の絶対 y 座標 (垂直方向)clickCount
- イベントに関連付けられたマウスクリックの回数popupTrigger
- boolean 型。このイベントがポップアップメニューのトリガーの場合は truescrollType
- このイベントに応答して発生するスクロールのタイプ。有効な値は WHEEL_UNIT_SCROLL
および WHEEL_BLOCK_SCROLL
scrollAmount
- scrollType が WHEEL_UNIT_SCROLL
の場合、スクロールされるユニット数wheelRotation
- マウスホイールを回転させた「クリック」数 (整数)IllegalArgumentException
- source
が null である場合MouseEvent.MouseEvent(java.awt.Component, int, long, int, int, int, int, boolean)
, MouseEvent.MouseEvent(java.awt.Component, int, long, int, int, int, int, int, int, boolean, int)
public MouseWheelEvent(Component source, int id, long when, int modifiers, int x, int y, int xAbs, int yAbs, int clickCount, boolean popupTrigger, int scrollType, int scrollAmount, int wheelRotation, double preciseWheelRotation)
MouseWheelEvent
オブジェクトを構築します。
無効な id
パラメータを渡すと、未指定の動作になります。このメソッドは source
が null
に等しい場合に IllegalArgumentException
をスローします。
コンストラクタに渡された相対座標と絶対座標の値が矛盾している場合でも MouseWheelEvent
インスタンスは作成され、例外はスローされません。
source
- イベントを発生させた Component
id
- イベントを特定する整数値when
- イベントの発生時間を渡す long 値modifiers
- イベント発生時に押された修飾キー (Shift、Ctrl、Alt、Meta)x
- マウス位置の x
座標 (水平方向)y
- マウス位置の y
座標 (垂直方向)xAbs
- マウス位置の絶対 x
座標 (水平方向)yAbs
- マウス位置の絶対 y
座標 (垂直方向)clickCount
- イベントに関連付けられたマウスクリックの回数popupTrigger
- boolean 値。このイベントがポップアップメニューのトリガーの場合は true
scrollType
- このイベントに応答して発生するスクロールのタイプ。有効な値は WHEEL_UNIT_SCROLL
および WHEEL_BLOCK_SCROLL
scrollAmount
- scrollType が WHEEL_UNIT_SCROLL
の場合、スクロールされるユニット数wheelRotation
- マウスホイールを回転させた「クリック」数 (整数)preciseWheelRotation
- マウスホイールを回転させた「クリック」数 (double)IllegalArgumentException
- source
が null である場合MouseEvent.MouseEvent(java.awt.Component, int, long, int, int, int, int, boolean)
, MouseEvent.MouseEvent(java.awt.Component, int, long, int, int, int, int, int, int, boolean, int)
public int getScrollType()
Adjustable.getUnitIncrement()
, Adjustable.getBlockIncrement()
, Scrollable.getScrollableUnitIncrement(java.awt.Rectangle, int, int)
, Scrollable.getScrollableBlockIncrement(java.awt.Rectangle, int, int)
public int getScrollAmount()
getScrollType
が MouseWheelEvent.WHEEL_UNIT_SCROLL
を返す場合にのみ有効です。getScrollType
が MouseWheelEvent.WHEEL_BLOCK_SCROLL
を返す場合)getScrollType()
public int getWheelRotation()
getPreciseWheelRotation()
public double getPreciseWheelRotation()
getWheelRotation()
public int getUnitsToScroll()
ScrollPane
および JScrollPane
には、すでにこの機能が組み込まれています。
このメソッドは、スクロールのタイプが MouseWheelEvent.WHEEL_UNIT_SCROLL の場合にスクロールするユニット数を返します。getScrollType
が MouseWheelEvent.WHEEL_UNIT_SCROLL を返す場合にのみ呼び出されます。
スクロールの方向、ホイールの移動量、およびホイールスクロールに関するプラットフォーム設定がすべて考慮されます。このメソッドは Adjustable または Scrollable ユニット増分値を考慮せず、また考慮できません。この値はスクロールコンポーネントによって変わるためです。
このメソッドがリスナーで使用される簡単な例を次に示します。
mouseWheelMoved(MouseWheelEvent event) { ScrollPane sp = getScrollPaneFromSomewhere(); Adjustable adj = sp.getVAdjustable() if (MouseWheelEvent.getScrollType() == WHEEL_UNIT_SCROLL) { int totalScrollAmount = event.getUnitsToScroll() * adj.getUnitIncrement(); adj.setValue(adj.getValue() + totalScrollAmount); } }
getScrollType()
, getScrollAmount()
, MouseWheelListener
, Adjustable
, Adjustable.getUnitIncrement()
, Scrollable
, Scrollable.getScrollableUnitIncrement(java.awt.Rectangle, int, int)
, ScrollPane
, ScrollPane.setWheelScrollingEnabled(boolean)
, JScrollPane
, JScrollPane.setWheelScrollingEnabled(boolean)
public String paramString()
paramString
、クラス: MouseEvent
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.