Lớp JSlider trong Java Swing Lớp JSlider được sử dụng để tạo con trượt slider.. Cú pháp khai báo của lớp JSlider như sau: public class JSlider extends JComponent implements SwingConst
Trang 1Lớp JSlider trong Java Swing
Lớp JSlider được sử dụng để tạo con trượt slider Bởi sử dụng JSlider, một người dùng có thể lựa
chọn một giá trị từ một dãy cụ thể Cú pháp khai báo của lớp JSlider như sau:
public class JSlider
extends JComponent
implements SwingConstants, Accessible
Lớp này kế thừa các phương thức từ các lớp sau:
javax.swing.JComponent
java.awt.Container
java.awt.Component
java.lang.Object
Các constructor được sử dụng phổ biến của lớp
JSlider
JSlider() : tạo một slider với giá trị khởi tạo là 50 và dãy giá trị là từ 0 tới 100
JSlider(int orientation) : tạo một slider với orientation đã cho được thiết lập bởi hoặc JSlider.HORIZONTAL hoặc JSlider.VERTICAL với dãy từ 0 tới 100 và giá trị khởi tạo là 50
JSlider(int min, int max) : tạo một thanh slider ngang bởi sử dụng giá trị min và max đã cho
JSlider(int min, int max, int value) : tạo một thanh slider ngang bởi sử dụng giá trị min, max và value đã cho
JSlider(int orientation, int min, int max, int value) : tạo một slider bởi sử dụng orientation, min, max và value đã cho
Các phương thức được sử dụng phổ biến của lớp
JSlider
public void setMinorTickSpacing(int n) : được sử dụng để thiết lập khoảng cách tick nhỏ nhất cho slider
Trang 2slider
public void setPaintTicks(boolean b) : được sử dụng để xác định xem tick mark có được sơn màu hay không
public void setPaintLabels(boolean b) : được sử dụng để xác định xem label có được sơn màu hay không
public void setPaintTracks(boolean b) : được sử dụng để xác định xem track có được sơn màu hay không
Chương trình ví dụ đầu tiên về lớp JSlider
import javax.swing.*;
public class SliderExample1 extends JFrame{
public SliderExample1()
JSlider slider = new JSlider(JSlider.HORIZONTAL, 0 50, 25);
JPanel panel=new JPanel();
panel.add(slider);
add(panel);
}
public static void main(String s[])
SliderExample1 frame=new SliderExample1();
frame.pack();
frame.setVisible(true);
}
}
import javax.swing.*;
Trang 3
public class SliderExample extends JFrame{
public SliderExample()
JSlider slider = new JSlider(JSlider.HORIZONTAL, 0 50, 25);
slider.setMinorTickSpacing( );
slider.setMajorTickSpacing(10);
slider.setPaintTicks(true);
slider.setPaintLabels(true);
JPanel panel=new JPanel();
panel.add(slider);
add(panel);
}
public static void main(String s[])
SliderExample frame=new SliderExample();
frame.pack();
frame.setVisible(true);
}
}
Chương trình ví dụ khác về lớp JSlider
package com.vietjack.gui;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
Trang 4
private JFrame mainFrame;
private JLabel headerLabel;
private JLabel statusLabel;
private JPanel controlPanel;
public SwingControlDemo(){
prepareGUI();
}
public static void main(String[] args){
SwingControlDemo swingControlDemo = new SwingControlDemo();
swingControlDemo.showSliderDemo();
}
private void prepareGUI(){
mainFrame = new JFrame("Vi du Java Swing");
mainFrame.setSize(400,400);
mainFrame.setLayout(new GridLayout( , 1));
mainFrame.addWindowListener(new WindowAdapter()
public void windowClosing(WindowEvent windowEvent){
System.exit( );
}
});
headerLabel = new JLabel("", JLabel.CENTER);
statusLabel = new JLabel("",JLabel.CENTER);
statusLabel.setSize(350,100);
controlPanel = new JPanel();
controlPanel.setLayout(new FlowLayout());
Trang 5mainFrame.add(headerLabel);
mainFrame.add(controlPanel);
mainFrame.add(statusLabel);
mainFrame.setVisible(true);
}
private void showSliderDemo(){
headerLabel.setText("Control in action: JSlider");
JSlider slider= new JSlider(JSlider.HORIZONTAL, ,100,10);
slider.addChangeListener(new ChangeListener()
public void stateChanged(ChangeEvent e) {
statusLabel.setText("Value : "
+ ((JSlider) getSource()).getValue());
}
});
controlPanel.add(slider);
mainFrame.setVisible(true);
}
}