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, NOBUTTONALT_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_MASKCOMPONENT_FIRST, COMPONENT_HIDDEN, COMPONENT_LAST, COMPONENT_MOVED, COMPONENT_RESIZED, COMPONENT_SHOWNACTION_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_MASKsource| コンストラクタ | 説明 |
|---|---|
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, translatePointconsume, getMaskForButton, getModifiers, getModifiersExText, getWhen, isAltDown, isAltGraphDown, isConsumed, isControlDown, isMetaDown, isShiftDowngetComponentgetSource@Native public static final int WHEEL_UNIT_SCROLL
getScrollType()、定数フィールド値@Native 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 - イベントを発生させたComponentid - イベントを特定する整数when - イベントの発生時間を渡すlong値modifiers - イベント発生時に押された修飾キー(Shift、Ctrl、Alt、Meta)x - マウス位置のx座標(水平方向)y - マウス位置のy座標(垂直方向)clickCount - イベントに関連付けられたマウス・クリックの回数popupTrigger - boolean型。このイベントがポップアップ・メニューのトリガーの場合はtruescrollType - このイベントに応答して発生するスクロールのタイプ。有効な値はWHEEL_UNIT_SCROLLおよびWHEEL_BLOCK_SCROLLscrollAmount - 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 - イベントを発生させたComponentid - イベントを特定する整数when - イベントの発生時間を渡すlong値modifiers - イベント発生時に押された修飾キー(Shift、Ctrl、Alt、Meta)x - マウス位置のx座標(水平方向)y - マウス位置のy座標(垂直方向)xAbs - マウス位置の絶対x座標(水平方向)yAbs - マウス位置の絶対y座標(垂直方向)clickCount - イベントに関連付けられたマウス・クリックの回数popupTrigger - boolean型。このイベントがポップアップ・メニューのトリガーの場合はtruescrollType - このイベントに応答して発生するスクロールのタイプ。有効な値はWHEEL_UNIT_SCROLLおよびWHEEL_BLOCK_SCROLLscrollAmount - 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 - イベントを発生させたComponentid - イベントを特定する整数値when - イベントの発生時間を渡すlong値modifiers - イベント発生時に押された修飾キー(Shift、Ctrl、Alt、Meta)x - マウス位置のx座標(水平方向)y - マウス位置のy座標(垂直方向)xAbs - マウス位置の絶対x座標(水平方向)yAbs - マウス位置の絶対y座標(垂直方向)clickCount - イベントに関連付けられたマウス・クリックの回数popupTrigger - boolean値。このイベントがポップアップ・メニューのトリガーの場合はtruescrollType - このイベントに応答して発生するスクロールのタイプ。有効な値はWHEEL_UNIT_SCROLLおよびWHEEL_BLOCK_SCROLLscrollAmount - 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, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。