- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于XML界面自动生成设计与实现
基于XML界面自动生成设计与实现
[摘要]首先对界面自动生成的原理进行介绍,然后从界面描述文件、界面组建库设计、界面组建事件监听类、界面自动生成器设计和XML文档复用这五个方面进行设计和介绍。
[关键词]XML 界面自动生成
中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0120082-01
用户界面是软件系统的重要组成部分,它主要负责接收用户的输入信息并显示程序处理的结果。随着软件系统规模的不断扩大,开发用户界面所耗费的时间和成本也将成倍增加,因此,怎样在较短的时间内设计出符合用户要求的用户界面,提高用户界面的开发效率成了急待解决的一个问题。
一、界面自动生成理论
基于XML的界面自动生成技术涉及界面描述的XML文档、界面组件事件监听类、界面生成器、编程语言的组件库和界面定制工具。界面生成器通过解析界面描述XML文档,调用编程语言的组件库构建组件,为组件绑定相应的事件监听类,自动生成所需要的用户界面。
要生成一个界面,首先要提供界面描述XML文档和界面组件事件监听类。界面描述XML文档使用XML描述界面上所有组件及其属性,包括名称、大小、位置、布局以及与之相对应的事件监听类等。界面描述XML文档可以用XML编辑器来编写,也可以从其他数据源自动生成。界面组件事件监听类负责监听并处理对应界面描述XML文档中组件的事件,比如按钮点击事件等,由组件事件引发的一系列操作都由该类来实现。在界面描述XML文档的解析过程中,界面生成器会根据文档中的组件事件属性值把事件监听类动态加载进来,并与对应的组件绑定。当某一组件的事件被触发时,就会执行它的事件监听类中定义的操作。
二、自动生成界面设计和实现
界面自动生成技术由界面定制工具、界面描述文件(XML)、界面组件事件监听类、组件库、界面自动生成器及生成的界面六大部分组成。在本方案中,还加上了查询到的XML和具有复用价值的XML文档来增加XML文档的可复用性。
要生成一个界面首先要启动一个界面自动生成器,来读取界面描述文件XML文档,该文件描述了界面中每个组件的具体信息,如组件类型、名字、对应的类名、事件监听类名、位置、尺寸以及响应事件和范围限制属性等。界面自动生成器根据这些描述信息对界面中的每个组件进行布局,并增加组件的事件监听功能。每个生成的界面都对应一个界面自动生成器对象,它除了负责生成界面外,还负责保存界面中的所有组件信息及一些界面中使用的全局变量,供事件监听类中的方法使用。
界面自动生成器需要识别界面描述文件中的各种组件类型。因此,就必须定义一个组件库,使用组件库中的组件可以很方便地构建符合要求的配置界面。当然,界面自动生成器也可以读取一个不属于该组件库中的组件,前提是该组件必须是JComponent的子类。界面自动生成器将按照该组件原本的样式显示该组件,并由组件自己完成事件监听的功能。自动生成界面的步骤如下:
第一步:根据显示界面需要编写界面描述XML文件,这步由可由界面定制工具辅助实现。
第二步:读取前台设备的硬件数据,生成界面初始数据,并设置到相应的组件中。
第三步:初始化界面生成器。
第四步:界面生成器读取界面描述的XML文件。
第五步:界面生成器根据描述信息创建界面元素,进行布局并显示界面。具体包括:①将XML文件中的组件元素进行分离,按照每个组件的尺寸和位置进行界面布局,对于容器组件使用递归方法进行解析;②将初始数据设置到各个相应的组件中;③完成组件的事件监听。对于组件库内的组件,界面生成器根据XML文件中定义的组件事件类名,运用JAVA的类反射机制实现该事件类的监听功能;对于组件库外的JComponent类的子类组件,由组件自己完成事件监听功能。
(一)界面描述文件的实现
界面描述文件使用XML语言来描述,既不能过于简单,也不能过于复杂,其表达内容包括:①界面主菜单结构的定义;②字段定义或者属性的描述信息,包括属性的类型、属性名称、属性是否为主键、属性的值来源类(比如,如果显示为一个列表框,则可以定义列表框的值来源,可以对应于server端的一个业务规则,也可以对应于一组固定的值列表)、属性是否可以编辑、属性的事件响应类;③界面元素的上下文action、action的界面处理方法的定义(应用可以定义处理方法类来实现扩展);④界面元素的导航关系的定义;⑤界面元素的层次关系的定义等等。
XML文档第一部分包含一些界面初始化的定义,像、表示界面的尺寸,中可以填写一个初始化的类的名字,该类必须继承基类InitAction。基类只有一个方法public void doAction(),用户应该在子类中覆
您可能关注的文档
- 基于Web金融交易系统设计与实现.doc
- 基于Web银行内部控制系统研究与设计.doc
- 基于Web阶段式自导学习模式在教学中应用.doc
- 基于Web阿拉善盟气象信息综合业务平台设计与实现.doc
- 基于Web银行贷款审批流程管理研究.doc
- 基于WEB限时考试系统设计与实现.doc
- 基于Web陶瓷行业供需信息互助平台设计与实现.doc
- 基于Web院级实验中心排课系统设计与开发.doc
- 基于Web页数据挖掘.doc
- 基于Web预算项目管理系统设计与实现.doc
- 湖南省衡阳市第八中学2026届高三上学期第一次月考物理(原卷版).doc
- 浙江省普通高中尖峰联盟2026届高三上学期10月联考英语(原卷版).doc
- 四川省绵阳市南山中学实验学校2026届高三上学期10月月考英语(原卷版).doc
- 湖南省衡阳市第八中学2026届高三上学期第二次月考历史 Word版含解析.doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题09 功和机械能(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题10 内能及其利用(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题07 压强(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题01 机械运动(原卷版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题02 声现象(解析版).doc
- 福建中考物理5年(2021-2025)真题分类汇编:专题02 声现象(原卷版).doc
最近下载
- 第1节 先秦的政权更替和内政外交 知识清单 高三统编版(2019)历史一轮复习(选必融合).docx VIP
- 腹腔镜食管裂孔疝修补手术材料选择及操作方法专家共识.pdf VIP
- 公共服务精准化-洞察及研究.docx VIP
- GB50050-2017 工业循环冷却水处设计规范.docx VIP
- 《生殖道HPV感染》课件.ppt VIP
- 《2014入党积极分子考察登记表.doc VIP
- 数据智能研究报告(2025年)-大数据技术标准推进委员会.pdf VIP
- 机器视觉技术试题库及答案.doc VIP
- 城市公共服务均衡性-洞察及研究.docx VIP
- (正式版)D-L∕T 819-2019 火力发电厂焊接热处理技术规程.docx VIP
原创力文档


文档评论(0)