SWT里Slider和Scale的区别

简介: 以前以为Slider和Scale之间只是外观的区别,今天发现不是这样的,因为Slider有一个特点:getSelection()能得到的最 大值并不是getMaximum()的值,要减去getThumb()值,后者是中间的滑块所拥有的值,缺省为10,最小为1。

以前以为Slider和Scale之间只是外观的区别,今天发现不是这样的,因为Slider有一个特点:getSelection()能得到的最 大值并不是getMaximum()的值,要减去getThumb()值,后者是中间的滑块所拥有的值,缺省为10,最小为1。运行这个程序观察控制台的 输出。

import  org.eclipse.swt. * ;
import  org.eclipse.swt.events.SelectionAdapter;
import  org.eclipse.swt.events.SelectionEvent;
import  org.eclipse.swt.widgets. * ;

public   class  SliderTest {

    
public   static   void  main(String[] args) {
        Display display 
=   new  Display();
        Shell shell 
=   new  Shell(display);
        
        
// Slider
         final  Slider slider  =   new  Slider(shell, SWT.HORIZONTAL);
        slider.setBounds(
10 10 200 32 );
        slider.setMinimum(
0 );
        slider.setMaximum(
100 );
        slider.setThumb(
5 );
        slider.addSelectionListener(
new  SelectionAdapter() {
            
public   void  widgetSelected(SelectionEvent e) {
                System.out.println(
" Slider Selection: "   +  slider.getSelection());
            }
        });

        
// Scale
         final  Scale scale  =   new  Scale(shell, SWT.HORIZONTAL);
        scale.setBounds(
10 50 200 72 );
        scale.setMinimum(
0 );
        scale.setMaximum(
100 );
        scale.addSelectionListener(
new  SelectionAdapter() {
            
public   void  widgetSelected(SelectionEvent e) {
                System.out.println(
" Scale Selection: "   +  scale.getSelection());
            }
        });

        shell.open();
        
while  ( ! shell.isDisposed()) {
            
if  ( ! display.readAndDispatch())
                display.sleep();
        }
        display.dispose();
    }
}

本文转自博客园八进制的博客,原文链接:SWT里Slider和Scale的区别,如需转载请自行联系原博主。


相关文章
|
5月前
【gloomyfish】Box zoom on Category Plot in JFreeChart
【gloomyfish】Box zoom on Category Plot in JFreeChart
29 0
|
编解码
怎么解决 ie 中获取 window.screen.width 不正确?
怎么解决 ie 中获取 window.screen.width 不正确?
153 0
怎么解决 ie 中获取 window.screen.width 不正确?
Core Animation - 渐变色CAGradientLayer
Core Animation - 渐变色CAGradientLayer
93 0
|
自然语言处理
Qt-QML-Slider-滑块-Style
感觉滑块这个东西,可以算是一个基本模块了,在我的项目中也有这个模块,今天我将学一下一下滑块的使用以及美化工作。
383 0
Qt-QML-Slider-滑块-Style
|
编解码
window.innerHeight window.outerHeight 与screen.height
本文目录 1. window 2. innerHeight与outerHeight 3. screen.height 4. 实例
420 0
window.innerHeight window.outerHeight 与screen.height
|
前端开发 容器
【全面解禁!真正的Expression Blend实战开发技巧】十一章 全面解析布局(Grid & Canvas &StackPanel &Wrappanel)
原文:【全面解禁!真正的Expression Blend实战开发技巧】十一章 全面解析布局(Grid & Canvas &StackPanel &Wrappanel)   写这篇文章前,特意在百度搜索了一下,发现目前网上介绍布局的文章不多,质量也不是很高。
996 0
|
Linux Windows