博为峰小博老师:
当拖动滑块改变其值的时候会激发ChangeEvent事件,而监听该事件的监听器需要实现ChangeListener,该接口只有一个方法stateChanged。下面将通过实例来讲解滑块在一般开发中的事件处理过程。其程序代码如下:
publicclassBWF {
JFramejf=null;
publicBWF(){
jf=newJFrame("博为峰教育");
jf.setSize(300, 200);
JPanelcontentPane=newJPanel();
contentPane.setLayout(newBorderLayout());
jf.setContentPane(contentPane);
JSliders=newJSlider(0,100,0);//创建一个滑块对象
s.setMajorTickSpacing(20);//设置主刻度
s.setMinorTickSpacing(5);//设置次刻度
s.setPaintTicks(true);//让刻度显现出来
s.setSnapToTicks(true);//让滑块到附近的整数处
s.setPaintLabels(true);//让刻度上的数字显示出来
JLabellabel=newJLabel("目前刻度:"+s.getValue());
contentPane.add(s,"South");
contentPane.add(label,"North");
s.addChangeListener(newChangeListener() {
publicvoidstateChanged(ChangeEvente) {
if(e.getSource()==s){
label.setText("目前刻度:"+s.getValue());
}
}
});
jf.setVisible(true);
jf.addWindowListener(newWindowAdapter() {
publicvoidwindowClosing(WindowEvente) {
System.exit(0);
}
});
}
publicstaticvoidmain(String[]args) {
newBWF();
}
}