3

JSlider のノブはもともと 1 自由度しかありません (トラック上で水平または垂直に移動します)。ノブに 2 番目の自由度を追加して手動で回転させたい。つまり、ノブを左右に動かして回転できるようにしたいのです。これらの動きはどちらも、マウスを直線方向または回転方向にドラッグすることで設定できる必要があります。私はこれのコードを見たことがなく、どうすればこれを実現できるのか疑問に思っていました。

4

1 に答える 1

1

メソッドを拡張BasicSliderUIしてオーバーライドpaintThumbし、親指の画像に回転変換を適用するか、回転した親指を手動で描画して、任意の回転で親指をペイントできるようにします。次に、この UI を JSlider に適用します。

マウスとキーボードで回転を制御するMouseWheelListenerには、JSlider に を追加して、マウス ホイールで親指の回転を制御するのが最も簡単な場合があります。

于 2012-10-11T03:18:16.517 に答える