Java slider想要改变颜色,三个Color参数,滑块值改变但是容器panel背景并未发生变化,问问这是什么原因,怎么才能时背景颜色跟着滑块值改变而变化
```java
package fourth;
/**
*
* @author lenovo
*/
import javax.swing.*;
import java.awt.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class Fourth extends JFrame{
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
JFrame jf = new JFrame("测试窗口");
jf.setSize(500, 500);
jf.setLocationRelativeTo(null);
JPanel panel = new JPanel();
//三个文本框组件显示当前滑块组件数值
JTextField text_1 = new JTextField(10);
JTextField text_2 = new JTextField(10);
JTextField text_3 = new JTextField(10);
// 创建一个滑块,最小值、最大值、初始值 分别为 0、255、125
final JSlider slider_1 = new JSlider(0, 255,125);
final JSlider slider_2 = new JSlider(0, 255,125);
final JSlider slider_3 = new JSlider(0, 255,125);
// 设置主刻度间隔
slider_1.setMajorTickSpacing(50);
slider_2.setMajorTickSpacing(50);
slider_3.setMajorTickSpacing(50);
// 设置次刻度间隔
slider_1.setMinorTickSpacing(10);
slider_2.setMinorTickSpacing(10);
slider_3.setMinorTickSpacing(10);
// 绘制 刻度 和 标签
slider_1.setPaintTicks(true);
slider_1.setPaintLabels(true);
slider_2.setPaintTicks(true);
slider_2.setPaintLabels(true);
slider_3.setPaintTicks(true);
slider_3.setPaintLabels(true);
// 添加刻度改变监听器
slider_1.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
String x1=""+slider_1.getValue();
text_1.setText(x1);
}
});
slider_2.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
String x2=""+slider_2.getValue();
text_2.setText(x2);
}
});
slider_3.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
String x3=""+slider_3.getValue();
text_3.setText(x3);
}
});
// 添加滑块到内容面板
panel.add(slider_1);
panel.add(text_1);
panel.add(slider_2);
panel.add(text_2);
panel.add(slider_3);
panel.add(text_3);
panel.setBackground(new Color(slider_1.getValue(),slider_2.getValue(),slider_3.getValue()));
jf.setContentPane(panel);
jf.setVisible(true);
}
}
```