快速业务通道

Eclipse向导机制扩展 - 实现可定制的向导 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14
导;

2. 创建向导所在的 Shell;

3. 添加向导页:addPages(),重写该方法给向导插入的向导页;

4. 创建向导页容器:WizardDialog.createPageContainer(Composite parent);

5. 创建每个向导页对应的 Control:IWizard.createPageControls(Composite pageContainer)。 Eclipse 调用它来实例化所有的向导页面。重写它给向导添加持续可视的窗体小部件;

6. 显示起始向导页:调用 WizardDialog.showStartingPage():重写该方法以获取向导第一个页面。

向导页定制

下面我们来看一下向导页的定制,向导页扩展了 WizardPage 类。开发人员为了定制自己的页面,必 须重写下面一些方法:

Constructor:实例化向导页面。

dispose():向导关闭时调用该方法清除向导页相关对象。

createControl(Composite parent):重写它来创建向导页控件。

IWizard getWizard():获取向导页所在的向导对象。

setPageComplete:当该向导页中的所有必须的设置都完成之后,可以将该页的状态设置为结束,然后 用户可以进入下一页。

setTitle(String title):设置向导页标题。

setDescription(String description):设置向导页的描述。

setImageDescriptor(ImageDescriptor image):提供页面右上方出现的图片。

setMessage(String message):设置向导页中的提示信息。

setErrorMessage(String error): 设置向导页中的错误提示信息。

performHelp():设置向导页的帮助信息。

当向导中有多个向导页时,我们可以在向导对话框最下方看到“Back”,“Next”,“Finish”和 “Cancel”四个按钮。 “Back”,“Next”按钮用于在多个向导页间进行跳转,当向导中只有一个向导 页时,只有“Finish”和“Cancel”两个按钮。

“Back”按钮:用于返回到前一个向导页。点击该按钮,将调用函数 IWizardPage getPreviousPage (IWizardPage previousPage),返回前一个页面。

“Next” 按钮:用于进入下一个向导页。对于一个设计合理的向导,只有当前向导页中所有必填的信 息设置完成之后,“Next”按钮才能变成有效状态,然后用户才被允许进入下一个页面。当用户填完页面 中的必须信息时,程序将执行 setPageComplete(true) 方法将当前向导页状态设为完成状态;之后用户 点击“Next”按钮,向导页 IWizardPage 的方法 getNextPage(IWizardPage nextPage) 被调用,返回下 一个向导页。默认情况下,用户将进入向导类 Wizard 的 addPages() 方法所提供的数组中的下一个页面 。如果我们要实现下一页有多种方案,必须重写该方法来计算后一个页面。

“Finish” 按钮:当所有向导页中的信息已经配好之后,用户点击 Finish 按钮,调用 performFinish() 函数来执行向导目标操作,用户需要重写它来实现向导的业务逻辑,如果 performFinish() 执行业务逻辑失败,则应该返回 false。

“Cancel”按钮:在向导运行过程中,用户可以随时点击该按钮,退出向导。点击该按钮,将会调用 performCancel() 函数,取消当前向导操作,并将之前所做的操作回滚。

Eclipse向导机制扩展 - 实现可定制的向导(3)

时间:2011-10-22 IBM 刘力 杜冰冰

Eclipse 向导扩展

从对 Eclipse 向导机制分析可知,Eclipse 向导页的添加是线性的,向导页的内容也是固定的,页面 内容和顺序一旦确定就无法改变。在实际应用中,我们面对的需求往往是复杂的,用户的操作步骤经常是 有分支的,向导页的内容有时候根据用户的操作需要动态变化。下面我们从两个方面对当前 Eclipse 向 导机制进行扩展:动态页数的 Eclipse 向导以及树状拓扑结构的 Eclipse 向导。

动态

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号