初始(50)——箭头指向下一个(51)——home(0)——end(90)——上一页(70)——下一页(90)——箭头指向上一个(89)——箭头指向下一个(90)——拉动滑块两格(88)
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.layout.*;
public class B{
public static void main(String[] args){
Display display=new Display();
Shell shell=new Shell(display);
shell.setText("滑块组件Slider");
shell.setLayout(new GridLayout());
//设置一个显示的滑块大小值的标签
final Label sliderValueLabel=new Label(shell,SWT.None);
//创建一个滑块
final Slider slider=new Slider(shell,SWT.HORIZONTAL);
//设置滑块的最大值和最小值
slider.setMaximum(100);
slider.setMinimum(0);
//设置滑块的大小
slider.setThumb(10);
//设置每移动一次箭头增加的大小
slider.setIncrement(1);
//设置单击滑块空白处移动的大小
slider.setPageIncrement(20);
//设置滑块初始选中的值
slider.setSelection(50);
sliderValueLabel.setText("滑块当前的值为"+slider.getSelection());
//为滑块注册事件(必须有,否则感知不到滑块的移动)
slider.addListener(SWT.Selection,new Listener(){
public void handleEvent(Event event){
String string="SWT.NONE";
switch(event.detail){
case SWT.DRAG:string="SWT.DRAG";break;
case SWT.HOME:string="SWT.HOME";break;
case SWT.END:string="SWT.END";break;
case SWT.PAGE_UP:string="SWT.PAGE_UP";break;
case SWT.PAGE_DOWN:string="SWT.PAGE_DOWN";break;
case SWT.ARROW_UP:string="SWT.ARROW_UP";break;
case SWT.ARROW_DOWN:string="SWT.ARROW_DOWN";break;
}
System.out.println("当前选中的是"+string);
sliderValueLabel.setText("滑块当前的值为"+slider.getSelection());
}
});
//打开窗口,进行窗口的显示
shell.setSize(200,100);
//shell.pack();
shell.open();
while(!shell.isDisposed()){
//当窗口没有被释放的时候
if(!display.readAndDispatch()){
display.sleep();
}
}
display.dispose();
}
}