EMF介绍系列(五、定制应用程序界面) - 编程入门网
EMF介绍系列(五、定制应用程序界面)时间:2011-04-30 博客园 bjzhanghao第三篇帖子介绍了定制一个EMF应用程序的基本方法,这一篇让我们来看看怎样定制应用 程序的使用界面。没有任何一个界面是万能的,所以定制工作不可避免,而大多数定制都是 通过修改代码来实现的。在实际应用中,同一个需求可能有多种修改方式可以实现,我认为 修改涉及的地方(类,方法)越少越有利于发挥EMF的优势,因此我们应该对EMF生成的代码 有一定的了解,这是发挥自己创造力的基础。 下面有几个常见的需求,通过对这些需求的实现,相信你会对EMF应用程序的开发过程有 一个更具体的认识。 一、简化模型创建向导 EMF帮我们生成的模型创建向导(菜单File->New->Other->Shop Model)分为两 步,第一步要用户输入文件名,对于商店的例子文件名是*.shop格式;第二步用户要选择以 哪个对象作为根节点,同时要指定XML文件的编码方式,商店例子里显然要以商店对象为根节 点,所以其实第二步可以省去,以免造成使用者的困扰。 生成的向导类是ShopModelWizard,比起增加一个步骤来,去掉一个步骤要简单得多。首 先找到addPages()方法,把最后四句关于initialObjectCreationPage最的语句都注释掉;
现在因为没有了这个向导页,原来由它提供的信息我们要改为在程序里提供,所以要修改 另外两个方法:第一,createInitialModel()方法本来是建立一个用户选择的对象作为根节 点的模型,我们把它改为直接建立一个Shop对象;
因此,这个类里我们总共修改了三个方法,一定记得要把每个方法前的@generated标记删 除或修改。现在,用户只要简单的指定文件名后就可以Finish了,如图1所示。 图1 向导的最后一页 EMF介绍系列(五、定制应用程序界面)(2)时间:2011-04-30 博客园 bjzhanghao二、改造大纲视图的显示 对于EMF来说,在应用程序模型的根节点上还有两层,分别是Resource和ResourceSet,在 商店的例子里,Category的父节点是Shop,Shop的父节点是Resource(具体来说是 XMLResource),Resource的父节点是ResourceSet,它们之间都是多对一的关系。缺省情况 下,大纲视图里显示的是完整的ResourceSet树(根节点不显示),显示出的最上层节点是“ platform: /resource/Project3/My.shop”,它代表 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |