6.2. X Window 术语

虽然您并不需要深入了解各种 X Window 组件的作用以及它们之间的相互影响, 但了解一些关于它们的基本知识还是很有必要的:

X 服务器

X 一开始就是针对网络而设计的, 并采用了 客户端-服务器 架构模型。 在这个模型中, X 服务器 运行在有键盘, 显示器, 鼠标的计算机上。 服务器负责像是显示部分的管理, 处理来自键盘和鼠标的输入信息, 并与其他输入输出设备交互 (比如作为输入设备的触控板, 或者作为输出设备的投影仪)。 这点可能会让人产生困惑, 因为 X 术语与他们原本预想的不同。 他们原本以为 X 服务器 是运行在性能强劲的计算机上的, 而 X 客户端 则是 运行在他们桌面上的计算机上。

X 客户端

每个 X 应用程序, 比如 XTerm , 或者 Firefox , 都是 客户端程序 。 客户端程序给服务器发消息, 如 请在这些坐标上画一个窗口 , 而服务器则返回处理消息, 如 用户刚刚点击了确定按钮

在家庭或小型办公环境中, X 服务器和 X 客户端通常在同一台计算机上运行。 另外也可以在一台性能不是很强劲的计算机上运行 X 服务器, 并在另外一台性能强劲的计算机上运行 X 客户端程序。 这种情况下, X 客户端和服务器之间的通信通过网络来完成。

窗口管理器

X 没有规定窗口在屏幕上该如何显示、 如何移动光标、 使用快捷键切换窗口、 各个窗口标题栏的长相, 以及是否该有关闭按钮等等。 实际上, X 把这部分交给所谓 窗口管理器 的应用程序来管理。 有很多这样的 窗口管理器 程序可用。 每种窗口管理器, 都提供不同的界面和外观: 有一些支持 “虚拟桌面”、 有一些允许自定义按键来管理您的桌面、 一些有 开始 按钮、 一些支持自定义主题, 通过安装新的主题, 可以完全改变外观。 这些以及很多其他的窗口管理器, 都可以在 Ports Collection 的 x11-wm 分类目录里找到。

每种窗口管理器也有不同的配置机制; 有些需要手工来写配置文件, 而其它大部分都是可以通过 GUI 工具来完成的配置任务。

桌面环境

KDEGNOME 都被认为是一个完整的桌面环境, 因为它们都包含了日常工作所需的整套软件。 比如有 Offcie 套件、 网页浏览器和游戏。

焦点策略

窗口管理器负责鼠标的焦点策略(focus policy)。 它规定了哪个窗口正在积极接受按键输入,并显示哪个窗口处于活动状态。

您通常比较熟悉的是一个叫做 点击对焦(click-to-focus)的焦点策略。 也就是您在一个窗口上点击一下鼠标, 这个窗口就处于当前激活状态。 常见的焦点策略: focus-follows-mouse 策略, 即鼠标光标所在窗口获得焦点,如果移动到其它窗口则其它窗口获得焦点。 如果移动到根窗口(root window),那么跟窗口获得焦点。 sloppy-focus 策略,与 focus-follows-mouse 类似, 但它在鼠标移入根窗口的时候最近使用的窗口依旧具有焦点, 只有当光标进入新窗口后才改变。 点击对焦 (click-to-focus) 焦点策略, 即当前窗口焦点由鼠标点击来获得。 窗口被“突出显示” , 出现在所有其他窗口的前面。即使指针被移向了另一个窗口,所有的键盘输入 仍会被这个窗口接收。 窗口被“突出显示” , 出现在所有其他窗口的前面。即使指针被移向了另一个窗口,所有的键盘输入 仍会被这个窗口接收。

不同的窗口管理器支持不同的焦点策略。 所有窗口管理器都支持点击聚焦, 他们中的绝大多数也支持其他焦点政策。 它们具体支持哪些焦点策略,您可以查看它们的文档。咨询窗口管理器的文档,以确定哪些重点型号可供选择。

窗口小部件

窗口小部件 (Widget) 只是针对用户接口中所有列举项目的一个术语, 它可以用某种方法来点击或操作; 如按钮、 复选框、 单选按钮、 图标,列表框等等。 有几个流行的小部件开发工具包,包括 KDE 使用的Qt , 和 GNOME 使用的GTK+ 。 因此, 应用程序不同的外观, 取决与采用哪些小部件开发包。

本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读 文档,如不能解决再联系 <questions@FreeBSD.org>.

关于本文档的问题请发信联系 <doc@FreeBSD.org>.