GTalk的界面居然是用IE控件
davies 发表于 2006 年 09 月 17 日
GTalk刚出来时,为其单文件的大小和清爽的界面所打动。它打破了一贯的Windows软件界面模式,没有系统菜单,也不见标准的Windows按钮 (设置对话框除外),甚至猜测它是使用Win32 API来实现的,Google 的传奇足以让我们敢对它做非常大胆的猜测。这种做法是与众不同的,正符合 Google 的作风,呵呵——纯属YY:-)
前几天阅读 chm 格式的文档时,很以外的发现 GTalk 的界面居然是用 IE 控件+JavaScript 来实现的。事情经过是这样的:看ANSYS的chm格式帮助文档时,嫌字太小,就设置IE的Internet选项/辅助功能/不使用网页中指定的字体大 小,然后通过 按住Ctrl并滚动鼠标滚轮来实现放大和缩小CHM中的字体大小。后来打开GTalk,发现聊天窗口的字体变大了,并且通过上面的方法能够控制字体大小。 后来又做了几次验证,跟猜测的完全一样。至少有一点可以肯定,GTalk的聊天窗口使用了IE的配置参数。不难推断,GTalk的整个界面都是通过IE控 件来实现的,这也是近来UI的一种趋势,微软的不少软件也逐渐采用了这种做法。
用HTML+JavaScript是Google的强项,把它应用到做桌面应用也是很自然的事情,比如Google Desktop Search就是通过在本地开一个httpd的方式来做界面,将Web应用延伸到了单机。新版本的GDS估计也是跟GTalk类似的UI实现。这种方案有 很多的好处,集中了BS结构和CS结构的所有优点。做一个CS的外壳程序,可以开机自启动,不受浏览器限制,而且比较容易的访问本地资源。而将核心业务采 用BS结构,在CS外壳中使用HTML+CSS来定制界面,用JavaScript来实现业务逻辑,而这部分全部或者部分是从服务器获取,维护起来非常方 便。现在用CSS来定制UI的技术已经非常成熟,原来单机程序比较复杂的换肤功能已经可以轻松实现,效果甚至更好,比如GTalk的聊天窗口。
Google一下,有人发现了更多的内容:GTalk聊天界面应该是基于IE内核的? 找到了本地的CSS文件,还有用SPY++看到了GTalk用的WebBrowser控件和RichEdit控件等。