Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách phát hiện thay đổi giá trị JSlider trong Java?

JSlider là lớp con của JComponent giống thanh cuộn cho phép chọn giá trị số nguyên từ phạm vi xác định. JSlider có knob trượt trên dải giá trị để chọn giá trị cụ thể và tạo interface ChangeListener.

Chúng ta phát hiện thay đổi giá trị khi trượt ngang bằng lớp Graphics2D và ghi đè paint().

Ví dụ

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(); 
    } 
}

Kết quả

Cách phát hiện thay đổi giá trị JSlider trong Java?