📄 jsliderdemo.java
字号:
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;
public class JSliderDemo extends JFrame implements ChangeListener
{
/** sliderRed: 调整红色值
* sliderGreen: 调整绿色值
* sliderBlue: 调整蓝色值
*/
private JSliderEx sliderRed, sliderGreen, sliderBlue;
private JPanel colorPanel, sliderPanel;
private Color color;
public JSliderDemo()
{
super("JSlider 组件");
setSize(400, 300);
Container container = getContentPane();
try
{ //设置外观
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}catch(Exception e){}
//创建颜色面板colorPanel
colorPanel = new JPanel();
container.add(colorPanel, BorderLayout.CENTER);
//创建存放三个JSlider组件的面板sliderPanel
sliderPanel = new JPanel();
sliderPanel.setBackground(Color.YELLOW);
sliderPanel.setPreferredSize(new Dimension(400, 150));
sliderPanel.setLayout(new GridLayout(3, 1, 5, 5));
//创建JSlider组件
sliderRed = new JSliderEx(this, 0, 255);
sliderGreen = new JSliderEx(this, 0, 255);
sliderBlue = new JSliderEx(this, 0, 255);
//设置组件背景色
sliderRed.setBackground(Color.RED);
sliderGreen.setBackground(Color.GREEN);
sliderBlue.setBackground(Color.BLUE);
sliderPanel.add(sliderRed);
sliderPanel.add(sliderGreen);
sliderPanel.add(sliderBlue);
container.add(sliderPanel, BorderLayout.SOUTH);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
JSliderDemo application = new JSliderDemo();
}
//处理ChangeEvent事件,当用户移动滑动杆时,面板colorPanel的背景色会随之改变
public void stateChanged(ChangeEvent event)
{
color = new Color(sliderRed.getValue(), sliderGreen.getValue(),
sliderBlue.getValue());
colorPanel.setBackground(color);
}
class JSliderEx extends JSlider
{
public JSliderEx(ChangeListener listener, int min, int max)
{
super(min, max);
//设置是否在JSlider加上刻度
setPaintTicks(true);
//设置大刻度之间的距离
setMajorTickSpacing(15);
//设置与小刻度之间的距离
setMinorTickSpacing(3);
//设置是否数字标记,若设为true,则JSlider刻度上就会有数值出现
setPaintLabels(true);
addChangeListener(listener); //添加事件监视器
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -