タイトル
TOPJavaSwingJSlider → This Page

JSlider@Swing サンプル02

概要

Java - Swing - JSlider のサンプルです。
・目盛りを表示
・目盛りの幅を設定
・ラベルを表示
・ラベル表示間隔を設定
・トラックを非表示
・ツールチップを設定

解説

スライダ1は目盛りやラベルの表示を true にしていますが、目盛り幅の設定をしていないので何も表示されません。
スライダ2は大目盛りを50、小目盛りを10にしています。
目盛りは10単位も50単位も表示されますが、ラベルは大目盛りの分だけ表示されます。
スライダ3は大目盛りを20、小目盛りを10にしています。
スライダ4は大目盛りを20、小目盛りは設定なしにしていますが、ラベル表示間隔を10にしています。
目盛りはは大目盛りの20単位しか表示されませんが、ラベルは10単位で表示されます。
スライダ5は目盛り幅の設定をしていないですが、ラベル表示間隔を20にしています。
目盛りは表示されませんが、ラベルは20単位で表示されます。
スライダ6はトラックを非表示にしています。
サンプルでは目盛りやラベルは表示するようにしていますが、
これすらしないとノブだけの表示になってしまいます。
また、各種スライダの上にカーソルを置いて数秒間待つと
ツールチップが表示されます。

サンプルイメージ

サンプル画像


サンプルソース

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JSlider;

/**
 * JSlider サンプル02
 * ・目盛りを表示
 * ・目盛りの幅を設定
 * ・ラベルを表示
 * ・ラベル表示間隔を設定
 * ・トラックを非表示
 * ・ツールチップを設定
 * 
 * @author みっちー
 */
public class JSlider02 extends JFrame {
	
	private static final long serialVersionUID = 1L;
	
	/**
	 * 開始メソッド
	 * 
	 * @param args	パラメータ
	 */
	public static void main(String[] args) {
		JSlider02 frame = new JSlider02();
		
		// 閉じるボタンをクリックされた場合の動作を設定
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		// ウインドウのタイトルを設定
		frame.setTitle("JSlider サンプル02");
		
		// フレームの X座標、Y座標、幅、高さを設定
		frame.setBounds(100, 200, 460, 200);
		
		// フレームを表示(これをしないと透明のフレームが立ち上がってしまう)
		frame.setVisible(true);
	}
	
	/**
	 * コンストラクタ
	 */
	public JSlider02() {
		// パネルを作成
		JPanel panelBase = new JPanel();
		
		// スライダを作成
		// 目盛りを表示
		// ラベルを表示
		JSlider slider1 = createDefaultSlider(1);
		JSlider slider2 = createDefaultSlider(2);
		JSlider slider3 = createDefaultSlider(3);
		JSlider slider4 = createDefaultSlider(4);
		JSlider slider5 = createDefaultSlider(5);
		JSlider slider6 = createDefaultSlider(6);
		
		// 大目盛りを設定
		slider2.setMajorTickSpacing(50);
		slider3.setMajorTickSpacing(20);
		slider4.setMajorTickSpacing(20);
		slider6.setMajorTickSpacing(20);
		
		// 小目盛りを設定
		slider2.setMinorTickSpacing(10);
		slider3.setMinorTickSpacing(10);
		
		// ラベル表示間隔を設定
		slider4.setLabelTable(slider4.createStandardLabels(10));
		slider5.setLabelTable(slider5.createStandardLabels(20));
		slider6.setLabelTable(slider6.createStandardLabels(20));
		
		// トラックを非表示
		slider6.setPaintTrack(false);
		
		// スライダを追加
		panelBase.add(slider1);
		panelBase.add(slider2);
		panelBase.add(slider3);
		panelBase.add(slider4);
		panelBase.add(slider5);
		panelBase.add(slider6);
		
		// パネルを追加
		getContentPane().add(panelBase);
	}
	
	/**
	 * スライダの作成
	 * 
	 * @param no  No
	 * @return スライダ
	 */
	private JSlider createDefaultSlider(int no) {
		JSlider slider = new JSlider();
		
		// 目盛りを表示
		slider.setPaintTicks(true);
		
		// ラベルを表示
		slider.setPaintLabels(true);
		
		// ツールチップを設定
		slider.setToolTipText("スライダ" + no + "のツールチップです");
		
		return slider;
	}
}

サンプルソースのダウンロード

ソースのダウンロード(Eclipse用のプロジェクトファイルも同梱)

更新履歴

2016/05/13 ツールチップ設定を追加
      Windows 8.1 + Java 7 環境で全体を見直し
2008/01/23 新規作成


TOPJavaSwingJSlider → This Page