zoukankan      html  css  js  c++  java
  • WizardDialog 进度条使用记录

    开发RCP的朋友们经常会使用到导航窗口,
    先简单介绍一下wizardDialog,基本上他的使用方法是这样的
    首先有一个WizardDialog,在dialog里面需要放一个Wizard来控制页面WizardPage之间的动作,
    • wizardDialog - 主要管理按钮,显示的描述信息,错误信息等基本窗口控件,
    • wizard - 主要控制页面,包括添加页面,页面之间的跳转等业务流程
    • wizardPage - wizard加入的page必须继承这个父类,主要是每一个页具体实现的内容
     
    有时候,页面需要完成某一些页面逻辑才能跳转到下一页,如eclipse的更新功能
     
    这个时候,就需要用到wizardDialog里面的一个方法,如下
     
    public void run(boolean fork, boolean cancelable,
                IRunnableWithProgress runnable) throws InvocationTargetException,
                InterruptedException {

    }

    这里有3个参数

    • fork - 在字面上的意思是,分叉的意思,在这里的含义是,是否使用另外一个线程完成执行任务,true为使用另外一个线程,false使用ui线程,ui线程在主线程,所以当使用ui线程的时候,所有动作将要暂停,等待任务完成了,才继续往前走
    • cancelable - 是否可以取消,这个参数只有使用另外一个线程的时候,才生效,意思就是说,当fork参数为true的时候,cancelable取消功能才生效。
    • IRunnableWithProcess runable - 则是今天的主题,任务接口,调用这个方法时,需要附上执行任务接口,需要重写run方法

    这里需要注意的是,这个过程中会校验是否用户需要使用进度条,默认情况下,进度条会被隐藏,如果需要使用进度条,侧需要在Wizard中打开进度条的功能

    setNeedsProgressMonitor(true);
  • 相关阅读:
    Delphi XE5 for Android (六)
    Delphi XE5 for Android (四)
    Delphi XE5 for Android (三)
    如何设计并使用FireMonkeyStyle
    Indy发送邮件被kbas退掉
    Indy10收发Hotmail邮件
    一个简单的打印监控示例
    DataSnap侦听端口动态设置问题
    面试题总结一
    spring boot RESTFul API拦截 以及Filter和interceptor 、Aspect区别
  • 原文地址:https://www.cnblogs.com/oscar1987121/p/5416341.html
Copyright © 2011-2022 走看看