快速业务通道

为SWT应用程序配备内容助理 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
置自动激活延迟。这是在类 XMLConfiguration 中完成的。我们向方法 getContentAssistant() 添加如清单 21 所示的行。

清单 21. 向 getContentAssistant 添加行

assistant.enableAutoActivation(true);    assistant.setAutoActivationDelay(500);

最后,我们也许希望改变内容助理弹出窗口的背景色,以把它和附加信息窗口区别开来。因此,我们向方法 getContentAssistant() 添加了额外两行,如清单 22 所示。

清单 22. 向 getContentAssistant 添加行

Color bgColor = colorManager.getColor(new RGB(230,255,230));    assistant.setProposalSelectorBackground(bgColor);

注意,我们使用了 XMLConfiguration 实例的颜色管理器来创建新的颜色。当颜色不再需要时,这样为我们省去了清除它的麻烦,因为颜色管理器会负责颜色的清除。

高级概念

现在,在成功地为我们的 HTML 管理器实现内容助理之后,您或许想知道基于模板的内容助理是如何工作的,以及它是如何实现的。我们从 Java 源代码编辑器中知道,这些内容助理具有一个特别的特性:它们的自动完成建议是可以参数化的。这类建议中的特定名称可由用户修改,结果使得该名称在整个建议中的所有实例被同时更新。

遗憾的是,这个功能是 Eclipse Java 开发工具包(JDT)插件的一部分,因而不管是基于 SWT/JFace 的独立应用程序,还是最简单的 Eclipse 平台,凡是没有这个插件的应用程序,都无法使用这个功能。幸运的是,这个功能的源代码可供使用,并且调整它以适应其他环境并不困难。特别是, org.eclipse.jdt.internal.ui.text.java 包中的类 ExperimentalProposal 以及 org.eclipse.jdt.internal.ui.text.link 包中的类型 ILinkedPositionListener 、 LinkedPositionUI 和 LinkedPositionManager 实现了这个功能。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号