XUL 用户界面语言介绍

XUL[1]是英文“XML User Interface Language”的首字母缩写。它是为了支持Mozilla系列的应用程序(如Mozilla Firefox和Mozilla Thunderbird)而开发的用户界面标示语言。顾名思义,它是一种应用XML来描述用户界面的标示语言。
XUL是开放标准,重用了许多现有的标准和技术[2],包括CSS、JavaScript、DTD和RDF等。所以对于有网络编程和设计经验的人士来说,学习XUL比学习其他用户界面标示语言相对简单。
使用XUL的主要好处在于它提供了一套简易和跨平台的widget定义。这节省了编程人员在开发软件时所付出的努力。

XUL元素 XUL定义了一套丰富的元素。它们大致上可分为以下几种:
基层元素:例如视窗、page、对话框、向导
Widget:例如标签、按钮、文字方块、条列式菜单、组合方块、选择钮、复选框、树、菜单、工具栏、分组框、标签页、色彩选择器、spacer、splitter
排版:例如方框、网格、堆栈、叠
事件和脚本:例如脚本、命令、key、broadcaster、observer
数据源:例如template、rule
其他:例如overlay(类似SSI,但在客户端运作,而且更为强大)、iframe、浏览器、编辑器
一个XUL文件中也可以包含其他XML命名空间的元素,例如XHTML、SVG和MathML。
现时的XUL还未在提供一些普遍的widget,例如spinbox、slider和canvas。XUL 2.0[3]计划中将会包括这些缺乏的控件。

XUL是如何处理的[4]
Mozilla浏览器内部使用跟HTML的处理非常相似的方法来处理XUL:当你在浏览器的地址栏里面输入HTML页面的URL以后,浏览器就定位这个网址并下载页面内容,然后Mozilla将页面内容转换成树的数据结构,最后再将树转换成对象集合,集合中的对象最终被展现在屏幕上就成了我们所见的网页。CSS, 图片以及其他技术被用来控制页面的展现。XUL的处理过程与此非常类似。

XUL应用 虽然XUL的设计原意是为了创作Mozilla程序及其扩展,但事实上人们也能利用它来编写基于HTTP的网络应用程序和基于swt/swing/gwt的客户端程序。一些开源的架构使用了XUL,例如Pentaho XUL Framework[5]。Pentaho XUL使用XUl跨多种技术(Swing, SWT, GWT)渲染用户界面,来实现业务逻辑的可重用性。shandor-xul[6]项目也是基于XUl开发的,项目地址见参考资料[6]。
Firefox里内置的一些XUL 地址见:http://www.cnblogs.com/jxsoft/archive/2011/04/07/2008202.html

运行XUL应用程序 可以选择 3 种方式来运行 XUL 应用程序:
1.使用基于 Mozilla 的浏览器进行简单测试
2.使用XULRunner
3.使用Firefox 3.0作为XUL运行时,它的功能和 XULRunner很相似

总结 XUL用户界面语言是一种可用于开发Mozilla独立应用程序和浏览器扩展的通用语言,还可以用来实现跨多种UI技术的用户接口,提高业务逻辑代码的重用性,第二点视乎是更值得推荐使用的。关于XUl的教程见参考资料。

参考资料

1.XUL Wiki :http://zh.wikipedia.org/wiki/XUL
2.XML 用户界面语言(XUL)开发简介:http://www.ibm.com/developerworks/cn/education/xml/x-xulintro/section2.html
3.XUL 2.0: https://wiki.mozilla.org/XUL:Home_Page
4.[XUL结构](https://developer.mozilla.org/cn/XUL_%E6%95%99%E7%A8%8B/1-2_XUL%E7%9A%84%E7%BB%93%E6%9E%84)
5.Pentaho XUL ramework: http://wiki.pentaho.com/display/ServerDoc2x/The+Pentaho+XUL+Framework+Developer's+Guide
6.shandor-xul:http://code.google.com/p/shandor-xul/
7.Mozilla XUL教程: https://developer.mozilla.org/index.php

时间: 2024-09-17 04:35:13

XUL 用户界面语言介绍的相关文章

XML用户界面语言(XUL)开发入门

本文配套源码 开始之前 本教程适用于对桌面开发感兴趣又不想学习太多新技术的有经验的Web开发人员.XUL(发音与cool类似)使运用Web开发技能构建桌面应用程序变得很容易.它提供了丰富的UI部件集,这些工具使用的是所有Web开发人员都很熟悉的语法.使用XUL,可以直接与HTML混合使用并可大量使用JavaScript. XUL是一种基于XML的语言,因此需要对XML(特别是XML名称空间)很熟悉.XUL建立在我们熟悉和喜欢的Web技术之上:HTML.JavaScript 和 CSS.如果想有效

Ignite用户配置管理介绍

gnite8这款数据库性能监控.性能分析软件,不光是DBA监控.管理数据库的利器之一,开发人员也可以查看系统性能数据,下面介绍一下如何在Ignite里面配置用户权限,本文纯水文一篇,介绍简单基本的配置操作,楼主权当整理文档手册.   Step 1: 进入Ignite主页时,点击右上角的Options选项进入配置页面.   Step 2: 选择呢Administration页面,选择"User Administration"选项,进入用户管理.配置界面.     Step 3:如下所示,

PostgreSQL 角色与用户管理介绍_PostgreSQL

一.角色与用户的区别 角色就相当于岗位:角色可以是经理,助理.用户就是具体的人:比如陈XX经理,朱XX助理,王XX助理.在PostgreSQL 里没有区分用户和角色的概念,"CREATE USER" 为 "CREATE ROLE" 的别名,这两个命令几乎是完全相同的,唯一的区别是"CREATE USER" 命令创建的用户默认带有LOGIN属性,而"CREATE ROLE" 命令创建的用户默认不带LOGIN属性(CREATE U

freebsd中添加与删除用户命令介绍

更改用户登陆shell 默认安装是使用sh登陆的,sh不支持TAB键 要切换到csh,直接运行csh即可 如果需要一劳永逸,那么用下面这个命令  代码如下 复制代码 name:是指你登陆的名称 pw usermod -n name -s csh ======================================添加用户  代码如下 复制代码 # pw groupadd vsftpd –g 1001 # pw useradd test –g 1001–d /home/test –s /s

inno setup介绍(转)

使 用 笔 记 1.Inno Setup 是什么?Inno Setup 是一个免费的 Windows 安装程序制作软件.第一次发表是在 1997 年,Inno Setup 今天在功能设置和稳定性上的竞争力可能已经超过一些商业的安装程序制作软件.关键功能: 支持现在所有正在使用的 32 位 Windows 版本: Windows 95,98,2000,Server 2003,XP,Me,NT 4.0 (不需要服务包). 支持创建单个 EXE 格式的安装程序,使你的程序可以很方便地在网络上发表.同时

qzone相册照片编辑器设计案例:减少用户思考的简洁设计

网页制作Webjx文章简介:设计案例:简化用户界面,别让用户思考. ·介绍QQ空间相册的个性化利器,能对照片进行效果的优化.文字编辑等等. 从设计上使用了创新的手法,尽量减少用户的思考.其中,通过界面的特殊表现,让用户更容易学会使用.在使用的过程中,也避免了复杂的操作方式,降低使用门槛. ·定位 了解用户需求·用户期望照片编辑工具拥有"玩"照片的成分:·大多数用户反映,最需要的功能是旋转.裁剪.添加照片的边框:·能给照片添加文字.装饰品:·对照片进行颜色或其他效果优化.- 分析用户需求

Win8.1用户账户的配置管理教程

登陆Win8.1账户的四种验证设置 之前(Win8.1使用技巧了解Windows用户账户)介绍过Win8.1账户大致上可以划分为管理员账户.用户自建账户.以及来宾账户三大类,在此基础上,我们再来具体地配置和管理账户,以便用户更深入地了解Windows用户账户的存在意义. 用户账户管理界面 想对Win8.1的用户账户进行全面管理,最好通过"控制面板"的"用户账户"选项,开启账户的管理界面(如下图); 从控制面板进入账户控制 也可以在开始屏幕的环境下,把鼠标移动到屏幕右

red hat Linux 9.0破解ROOT根用户密码

近些年,随着更多的基于http://www.aliyun.com/zixun/aggregation/6043.html">英特尔处理器的服务器开始采用Linux操作系统,不论是企业级用户还是个人用户对于Linux操作系统的关注程度逐渐提高,而作为自由软件,免费.公开源代码的特点受到广大的用户喜爱,在众多热心者的努力下,Linux逐渐成为一个稳定可靠.功能完善的操作系统. 作为一个操作系统,Linux几乎满足当今Unix操作系统的所有要求,而不同的是UNIX系统大多是与硬件配套的,而Lin

Centos系统文件与用户权限分配详解ftp,nginx,php

文件权限设置 权限管理 主要的命令有: chmod.chown.chgrp.umask 1). 改变文件或目录的权限 chmod 2). 改变文件或目录的所有者 chown 3). 改变文件或目录的所属组 chgrp 4). 显示.设置文件与目录的缺省权限 umask 我想要改改目录权限的初衷,是因为我想将这个服务器配置更像虚拟主机一样,因为我的运行环境是nginx+php-fpm,我将他们的运行用户都设置为nginx,组设置为ftp,以我的名字建了ftp账户,用户名为zhangcunchao,