ProgressBar Tutorial
进度条(ProgressBar)除了可以是水平的(SWT.HORIZONTAL)也可以是垂直的(SWT.VERTICAL)之外,有两种分格,一种是SWT.SMOOTH,还有一种是SWT.INDETERMINATE,默认情况是SWT.SMOOTH。
- SWT.SMOOTH:进度条可以设置最大值,最小值以及当前的进度(Selection),只有进度值发生变化时,进度条才会更新。
- SWT.INDETERMINATE:进度条会一直滚动显示,最大值,最小值和进度值都对它无效。
先看一段示例:
    final Display display = new Display();
    final Shell shell = new Shell(display);
    shell.setText("ProgressBar Tutorial");
    shell.setSize(315, 200);
    shell.setLayout(new GridLayout(2, false));
    // SWT.DEFAULT | SWT.SMOOTH
    final ProgressBar smoothBar = new ProgressBar(shell, SWT.SMOOTH);
    smoothBar.setMaximum(100);
    smoothBar.setSelection(30);
    new Label(shell, SWT.NONE).setText("SWT.SMOOTH");
    // SWT.INDETERMINATE
    new ProgressBar(shell, SWT.INDETERMINATE);
    new Label(shell, SWT.NONE).setText("SWT.INDETERMINATE");
    shell.open();
    while (!shell.isDisposed()) {
        if (!display.readAndDispatch()) {
            display.sleep();
        }
    }
    display.dispose();
如图:

State
ProgressBar在有些系统中(如Windows 7和Mac OS)支持三种类型的状态:SWT.NORMAL,SWT.ERROR和SWT.PAUSED。一般情况下会在TaskBar上面以不同的颜色同步显示进度
参考资料:
  * ProgressBar snippets
  * 如果想了解更多的关于设置颜色,字体等其它属性的相关内容,请移步至控件的通用设置
  * 如果想了解更多的关于Layout和LayoutData的相关内容,请移步至布局管理器
  * SWT Example: ControlExample
  * Sample code and further information
Back to Home 上一篇:CoolBar Tutorial 下一篇:ScrollBar Tutorial