随着互联网的迅速普及,网络用户在网上冲浪访问网站时,享受着网络带来的各种体验,工具条也越来越成为这种体验不可或缺的重要组成部分。有的用户安装某个工具条软件后,享受着工具条软件带来的便捷和易用;也有的用户计算机被莫名其妙地安装了自己并不喜欢的工具条软件,而带来不少痛苦。那么工具条是什么,这其中的奥妙又是什么,世界网络教研室方体先生为您全面解说浏览器工具条。
2. 如何开发工具条
由于目前用户使用的Web浏览器包括IE、Mozilla Firefox、Maxthon、腾讯TT等,不同浏览器的工具条开发技术差别很大。所以我们需要确定制作的工具条在什么浏览器上运行。目前在国内几乎95%以上的网络用户都是使用Internet
Explore浏览器,下面以在IE上开发工具条为例进行说明。本文不就具体开发过程描述,主要对工具条的相关开发知识做些简要介绍。
浏览器有两种主要的插件技术:一是浏览器辅助对象(BHO)插件;二是浏览器栏对象(Band)插件。各个浏览器对BHO和Band的支持方式也差别很大。
BHO是依托于浏览器主窗口,和浏览器实例的生命周期一致的组件。在组件内,可以接收浏览器的动作事件,同时,在这些事件的响应中实现与浏览器的交互。
Band和BHO有些类似,Band需要比BHO实现某些Band接口,从而可以创建窗体。由于Band也是一类组件,所以Band也需要放到一个容器(即浏览器)中去使用。Band
对象分三种类型:浏览器栏(Explorer Bands)、工具栏 Band(Tool Bands)和桌面工具栏(Desk Bands)。
浏览器工具条也就是工具栏,是浏览器Band插件。IE浏览器工具条的默认显示需要借助BHO的ShowBrowserBar方法来实现。因此,开发工程师在准备开发IE工具条前,首先需要了解Band和BHO的相关知识。
对开发人员,有一个必须面队的问题就是选用什么开发语言开发工具条。VB、VC、Delphi、C++.NET、C#
都可以用来开发浏览器工具条。无疑VC是开发语言首选,也许有人会问,用C++.NET托管代码开发不好吗?那当然不行,托管代码需要有Microsoft
.NET Framework支持才能运行,我们不能都让Windows 2000、Windows XP的用户去下载安装Microsoft
.NET Framework吧。VC是开发语言首选的原因主要有三个:一是VC运行效率高;二是VC发布的程序包最小;三是VC可以很好地进行ATL组件开发。以上前两个原因是互联网用户使用浏览器工具条的两个重要因素。
在实现IToolBar接口的ATL组件内,工具条按钮的创建是通过对TBBUTTON结构的设置来决定每一个工具条按钮的信息。TBBUTTON结构的数据成员包含了工具条按钮的图标、标题、类型、状态等相关信息。通过创建工具条的窗口句柄,并向工具条发送TB_ADDBUTTONS消息来完成工具条按钮的创建。对于工具条上的非按钮控件(比如输入框、滚动新闻、音乐播放等),则需要特殊处理。
工具条看起来占的位置不大,开发工作量确是很大。除了以上提到的Band和BHO技术,软件工程师还需要面对文件、注册表、图片、输入框、下拉菜单、事件响应、浏览器操作、中文支持等重重挑战。
上一页
下一页
本专题相关文章