スライダーのフォントを設定する

広告

スライダーに表示される文字列のフォントを設定する方法を確認します。JSliderクラスで用意されている「setFont」メソッドを使います。

このコンポーネントのフォントを設定します。

パラメータ:
  font - このコンポーネントに指定する Font

引数にはスライダーに表示される文字列に設定したいFontクラスのオブジェクトを指定します。Fontクラスについては『Fontクラス』を参照して下さい。

実際の使い方は次のようになります。

JSlider slider = new JSlider();
slider.setMajorTickSpacing(10);
slider.setPaintTicks(true);
slider.setLabelTable(slider.createStandardLabels(20));
slider.setPaintLabels(true);

slider.setFont(new Font("Arial", Font.PLAIN, 12));

ラベルテーブルを自分で定義した場合にはフォントの設定は反映されません。ラベルテーブルを自分で定義した場合にフォントを変更するにはラベルテーブルに登録するJComponentクラスのオブジェクトに個別に設定して下さい。

サンプルプログラム

では簡単なサンプルを作成して試してみます。

JSliderTest14.java

import javax.swing.*;
import java.awt.Font;
import java.awt.BorderLayout;

public class JSliderTest14 extends JFrame{

  public static void main(String[] args){
    JSliderTest14 frame = new JSliderTest14();

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setBounds(10, 10, 300, 200);
    frame.setTitle("タイトル");
    frame.setVisible(true);
  }

  JSliderTest14(){
    JSlider slider = new JSlider();
    slider.setMajorTickSpacing(10);
    slider.setPaintTicks(true);
    slider.setLabelTable(slider.createStandardLabels(20));
    slider.setPaintLabels(true);
    slider.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));

    JPanel p = new JPanel();
    p.add(slider);

    getContentPane().add(p, BorderLayout.CENTER);
  }
}

上記をコンパイルした後で実行すると次のように表示されます。

JSliderでフォントを設定する

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)