0

私が読んでいるこの教科書には、次のような質問があります。

「Swing を使用する場合、アプリケーション ウィンドウでオブジェクトをドラッグできるようにするには、次のうちどれを実行する必要がありますか?」

A.オブジェクトに mouseDragged メソッドがある
B.パネルに MouseListener を追加する
C.オブジェクトに MouseMotionListener を追加する
D.パネルに MouseMotionListener を追加する

mouseDragged は親オブジェクトから継承される可能性があるため、A は正しくないと思います。B は間違っています。マウスのドラッグには MouseListener が使用されていないからです。ドラッグしたいオブジェクトなので、正解は C だと思いますが、以前の仮定が正しいかどうかは 100% 確信が持てません。

MouseMotionListener の Java API は、「そのクラスから作成されたリスナー オブジェクトは、コンポーネントの addMouseMotionListener メソッドを使用してコンポーネントに登録される」と述べています。

4

1 に答える 1

1

答えになると思います

D.MouseMotionListenerをパネルに追加します。

何かをドラッグすると、そのオブジェクトが表示されているパネル内でそのオブジェクトの座標が変化します。したがって、MouseMotionListenerパネルに を追加することで、if 条件を使用してドラッグの開始点がオブジェクトの境界内にあるかどうかを確認し、ドラッグを処理するための適切なコードを記述することができます。

オブジェクト自体にを追加するMouseMotionListenerと、オブジェクトの境界の外に出るドラッグを追跡できなくなります。

于 2013-06-29T03:53:21.703 に答える