JSlider JComponent의 하위 클래스입니다. 클래스이며 사용자가 지정된 정수 값 범위에서 숫자 값을 선택할 수 있도록 하는 스크롤 막대와 유사합니다. JSlider 노브가 있음 값의 범위에서 미끄러질 수 있고 특정 값을 선택하는 데 사용할 수 있습니다. ChangeListener를 생성할 수 있습니다. 인터페이스.
Graphics2D를 사용하여 슬라이더를 수평으로 이동할 때 변경된 값을 감지할 수 있습니다. 클래스 및 재정의 paint() 방법.
예시
import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; public class ValueChangeJSliderTest extends JFrame { private JSlider slider; public ValueChangeJSliderTest() { setTitle("ValueChangeJSlider Test"); slider = new JSlider(JSlider.HORIZONTAL, 0, 20, 1); slider.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent ce) { repaint(); } }); setLayout(new BorderLayout()); slider.setBackground(Color.white); slider.setMajorTickSpacing(1); slider.setPaintTicks(true); slider.setPaintLabels(true); add(slider, BorderLayout.NORTH); setSize(400, 300); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); } public void paint(Graphics g) { super.paint(g); Graphics2D g2d = (Graphics2D) g; g2d.setFont(new Font("Serif", Font.ITALIC, 25)); g2d.drawString(""+slider.getValue(), 200, 130); } public static void main(String[] args) { new ValueChangeJSliderTest(); } }
출력