快速业务通道

Eclipse e4的亮点 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-17
浏览器中绘制这些组件。现在,e4 支持在 Flash 或动作脚本中呈现 SWT 组件。将来还有技术支持 JavaScript Silverlight 版本 。

XWT

XWT 即 SWT 的 XML UI,是一个框架,用来以 XML(.xwt) 声明式 地编写 SWT/JFace 小部件。在 XWT 中,应用程序的完整结构或小部件分层结构 也都是以 XML 声明式定义的。一个能实现小部件、事件回调和业务逻辑的 Java 文件也会被创建。UI 组件可以绑定一个底层应用程序模型,以便为 UI 组件提供 数据。

XWT 的好处很明显。XWT,加上外部 CSS,可以彻底地拆分业务逻 辑和 UI 相关的方面,从而节省了工作量并使 SWT 代码更易于维护。

使 用 XWT

在本节,我们将通过创建一个简单的应用程序来了解 XWT。在这 个应用程序中,您将使用 e4 的新 XWT 透视图并会对 XWT 数据绑定特性有所了 解。参见下载部分来下载这里用到的源代码。

Hello XWT

第一步是创建一个基于 Eclipse V3.5 的空插件项目。您不必创建一个富客户 平台(RCP)应用程序或使用任何其他的应用程序模板。只需按以下步骤操作:

从零开始创建 XWT 示例,如图 2和图 3所示。

图 2. 创建一个新插件项目

Eclipse e4的亮点(3)

时间:2011-05-15 IBM Yi Ming Huang

图 3. 继续创建这个新插件项目

在新创建的 Hello 项目中,添加如下的插件作为项目依赖项。它们是使用 XWT 和数据绑定的最低要求。

org.eclipse.swt

org.eclipse.jface

org.eclipse.core.runtime

org.eclipse.e4.xwt

org.eclipse.core.databinding

org.eclipse.core.databinding.property

org.eclipse.jface.databinding

com.ibm.icu

Eclipse e4的亮点(4)

时间:2011-05-15 IBM Yi Ming Huang

现在,项目就建立好了。

创建一个新 UI Element 来开始 XWT 编程。Eclipse 将会自动地为您创建一 个 XWT UI 声明(xwt 文件)和 Java 类,如图 4 中所示。

图 4. 创建 UI 元素

您可能已经注意到一个名为 XWT 的新透视图已经打开。其内包括一个预览应 用程序 UI 的视图和一个调色板,通过这个调色板,可以将 SWT/JFace 组件拖放 到代码编辑器中。

将一个 Button 控件拖放到 XML 代码中,如图 5 所示。

图 5. 有一个按 钮的 XWT

Eclipse e4的亮点(5)

时间:2011-05-15 IBM Yi Ming Huang

请注意,这个应用程序结构或小部件层次结构是在 XML(.xwt)内声明的,比 起最初在 Java 类中编写,这种方法可以节省大量的布局工作。底层 Java 类包 括事件的处理程序、构造函数等。如果熟悉 Adobe Flex,会发现有很多相似之处 。

要在 Say Hello 按钮上添加一个单击处理程序,只需在 <Button> 标 记中添加 SelectionEvent=”sayHello” 并单击 Generate Java code。在 HelloWorld.java 中就生成了一个事件处理程序。UI 布局以及动作/事件代码在 XWT 内和 Java 源代码内被很好地分离。图 6 给出了一个示例。

图 6. 为按 钮添加 SelectionEvent

修改 HelloWorld.java 并填入单击处理程序,如清单 1 中所示。这会打开一 个消息框并显示 Hello XWT。

清单 1. sayHello 方法

public void  sayHello(Event event) {   Button btn = (Button) event.widget;   MessageDialog.openInformation(XWT.findShell(btn),        "Hello XWT", "Hello XWT"); }

这很简单。

最后一步是创建一个启动这个应用程序的主函数。创建一个名为 Application 的类并编写如清单 2 中所示的相当直观的 main 函数。

清单 2. main 函数

public static void main(String[] args) {   URL content =   HelloWorld.class.getResource("HelloWorld.xwt");   try {   XWT.open(content);   } catch (Excepti

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