//JSilderDemopackage JSliderdemo;import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.event.*;public class JSliderDemo
{
JFrame frame=new JFrame("Chevi.C JSilder");
//添加水平的slider
JSlider slider=new JSlider(JSlider.HORIZONTAL,0,100,50); int point=50; JPanel panel=new JPanel()
{
public void Paint(Graphics g)
{
g.drawRect(50,
                     100,
                     point,
                     point);
}
}; public JSliderDemo()
{
frame.setBounds(400,500,400,500);
frame.setLayout(new BorderLayout(5,5));

//确定是否在滑块上绘制滑道
slider.setPaintTrack(true);

//确定是否在滑块上绘制标签。
slider.setPaintLabels(true); //确定是否在滑块上绘制刻度标记。
slider.setPaintTicks(true);

panel.setVisible(true); frame.getContentPane().add(slider,BorderLayout.NORTH);
frame.getContentPane().add(panel,BorderLayout.CENTER);

frame.setVisible(true); frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
          
//当侦听器的目标已更改其状态时调用
slider.addChangeListener(this); //滑块事件监听类
class MyChangeListener implements ChangeListener
{
JSliderDemo demo;
public MyChangeListener(JSliderDemo s)
{
demo=s;
}
public void stateChanged(ChangeEvent e)
{
JSlider source = (JSlider)e.getSource();
demo.point=source.getValue(); };
}
}
};编译的时候出现了这样的问题:
Jsliderdemo.java:53: 无法将 javax.swing.JSlider 中的 addChangeListener(javax.swi
ng.event.ChangeListener) 应用于 (JSliderdemo.JSliderDemo)
                slider.addChangeListener(this);
                      ^