本文“握手”图片已获得Clker.com授权。GNODE和KDE这两种桌面环境在视觉上的区别是显而易见的,那么如何将一个环境中的应用程序无误地移植到另一个环境中呢?有人在今天的超级用户问答板上回答了这个问题。以下问答版块已获得SuperUser授权(SuperUser是StackExchange的一个版块,StackExchange是一个社区问答网站)。问题:超级用户LeNoob想知道KDE下的应用程序在GNOME环境下是如何运行的:GNOME使用GTK+图形库,KDE使用Qt图形库,那么KDE应用程序如何在GNOME环境下运行,内部机制是什么他们的顺利运作?答案:超级用户贡献者graity提供了以下答案:这种移植是可能的,因为桌面环境KDE和GNOME使用相同的图形系统X11。所有的图形程序都通过X11协议与X服务器(通常是Xorg)进行交互:发送命令绘制屏幕,??接收来自鼠标、键盘等外设的输入事件。至于GTK、Qt等UI工具包,则以链接库的形式被图形程序调用。在GNOME环境下,程序使用libgdk和libgtk;在KDE环境下,程序使用libQtCore和ligQtGui。这两个工具包都简单地调用X11函数来绘制相应程序的窗口。大多数现代工具包(如GTK、Qt和EFL)都有绘图功能,它们通常将绘制的窗口直接发送到X11。相比之下,一些传统的工具包,如Xaw和Motif,将绘制线条或矩形的命令发送到X服务器,然后服务器解析命令并绘制窗口。X11协议还涉及到窗口管理功能,所以每一个桌面环境都会有一个“窗口管理器”程序。程序负责绘制窗口框,完成窗口的移动、放大缩小等操作。事实上,目前功能强大的窗口管理器已经取代了Xorg的工作,它可以将所有窗口合成为图像显示在屏幕上,这样就可以很方便地添加一些阴影等效果。为了更好的兼容性,将桌面环境绑定到unity图形系统是一个很棒的设计。通过这种方式,您可以在同一个桌面环境中运行您感兴趣的所有应用程序,即使该应用程序不是为桌面环境开发的。原文链接:howtogeek翻译:伯乐在线-honpey翻译链接:http://blog.jobbole.com/62989/【编者推荐】Windows管理员的GNOME桌面工具开源桌面环境GNOME3.10ReleasesKDEvsGNOME:Settings,Applicationsand小工具如何在Ubuntu13.10中安装Gnome3.10?
