XUL Tutorial(一)
这将是 XUL Tutorial 教程的简化版本。我写它的目的不是为了宣传 XUL ,而是想直接了解如何运用 XUL 来进行开发。因此我将会一边学习一边将我认为重要的东西留下,不重要的东西根本就不会写上,有些东西就是原文翻译。如果你对我写的感兴趣,那么希望你可以对照着学习,可以了解得更全面。如果你也象我一样想快速了解,那么可以只和我一起学习。希望我不会漏掉什么东西。此系统的 Blog 只是我的学习记录,按我的风格来写,切记。
XUL (XML User-interface Language) -- XML 用户界面语言 发音为:zool
XUL是一种XML语言,因此所有XML的特性可以用在XUL上,并且所有XML的限制也将对XUL起作用,如:书写规范。 XUL是为了在Mozilla上开发而发展的一种语言,而Mozilla正在日益成为象Java一样的应用程序开发平台。现在Mozilla在许多操作系统上都有移植,因此可以基于Mozilla实现跨平台的开发。
XUL可以创建现在图形界面绝大多数的元素(在Firefox中已经体会到了,非常丰富),其中包括:
- 输入控制,如文本框和检查框
- 带按钮或其它内容的工具条
- 菜单条上的菜单或弹出菜单
- 分页的对话框
- 分级树型结构或表格信息
- 快捷键
显示的内容可以是XUL的内容也可以是从数据源来的。
XUL的内容通常是从安装在Mozilla中的包中装载进来的。这些包允许应用程序可以拥有特别的权力,比如:读取本地文件和修改用户参数。一个应用程序的XUL文件和相关的脚本、图片一般是打成一个包,可以让用户下载和安装。Mozilla提供了一种方法(XPI)可以让安装和注册这些包变得简单。另外,这些包可以覆盖(overlay,在Mozilla中一种特别技术)浏览器或其它应用程序来增加特性,这也是Firefox扩展工作的方式。
关于overlay技术我看了一点,其原理与NewEdit的Mixin技术很象,不过要更复杂。因为Mozilla本身可以是多个应用程序共享平台,而它的overlay技术可以让多个应用程序互相overlay。关于overlay以后会学到。
也可以从文件系统或远程的web站点来直接打开XUL文件,然而它们所能做的操作被受到限制(出于安全的目的),而且XUL的某些地方会无法工作。然而,如果你想从远程站点装入XUL的内容,web server必须把XUL文件的content type设成'application/vnd.mozilla.xul+xml'才可以。XUL通常以.xul扩展名进行保存。
学习XUL你需要了解的三项基本技术是:HTML,CSS和XML的基本知识。
开发和测试XUL你需要安装Mozilla/Firefox,外加文本编辑器(因为开发程序所用的文件格式都是文本的)。