10

親指のサイズはどのように設定できますJSliderか?

デフォルトとJSlider256 の範囲では、つまみの幅は数ピクセルしかないため、マウスで制御するのは非常に困難です。

Windows 7 のルック アンド フィールを使用しており、スライダーは次のようになっています。

スライダーのスクリーンショット

大目盛りと小目盛りの間隔を 0 にして有効paintTicksにすると、表示が改善されます (ただし、推奨されません)。

paintTicks を有効にしたスライダーのスクリーンショット

次の画像は、ネイティブの Windows 7 アプリケーションから取得した目的のディスプレイを示しています。

ネイティブ スライダーのスクリーンショット

4

2 に答える 2

3

JSlider次のように、ルック アンド フィールをカスタマイズしてみてください。

UIDefaults defaults = UIManager.getDefaults();
defaults.put("Slider.thumbHeight", HEIGHT_AS_INTEGER); // change height
defaults.put("Slider.thumbWidth", WIDTH_AS_INTEGER); // change width

参照:

これらの変更はすべてのJSliderインスタンスに適用されるため、このアプローチが望ましくない場合があることに注意してください。

于 2011-08-22T14:06:35.500 に答える
2

これは、サイズがハードコードされている可能性がある SliderUI に依存します。そうでない場合、すべてのスライダーに同じ親指サイズが必要な場合は、mre の提案を使用することをお勧めします。

それらを使用する UI のデフォルトを設定する代わりに、特別なスライダー (例: ) に別の UI を定義することもできますが、myslider.setUI(new MyCustonSliderUI())それには独自の欠点があることに注意してください。

于 2011-08-22T14:13:46.377 に答える