旷 强
使用
vb5附带的WebBrowser控件,可以非常简单地设计出一个实用的浏览器。
首先,加载“Microsoft Internet Controls”和“Microsoft Windows Controls”控件。然后,设计好界面。
在Web浏览器里定义URL
现在,已经建立了浏览器里所需的一些控件,怎么让用户导航呢?
我们可使用WebBrowser控件的Navigate方法。接下来看一看这种方法。例如:Web浏览器首次加载时,可以通过这种方法去导航Microsoft Web页(注意在Intenet Explorroe可定义带或不带“HTTP://”):
private sub form_load()
webbrowser1.navigate
″www.microsoft.com″
…
end sub
当然也可以使用户能够导航新的URL,这通常使用组合框Combo1。首先通过显示当前的URL来启动Combo1工作将其加载到组合框的下拉列表中:
private sub form_load()
webbrowser1.navigate″www.microsoft.com″
combo1.text=″www.microsoft.com″
combo1.AddItedm combo1.text
end sub
用户可以从组合框下拉列表里选择过去的URLS ,当通过这种方法选择了一个URL时,相应的Click事件就产生了,用这种方法能够导航最新选择的URL:
private sub combo1_load()
webbrowser1.navigate combo1.text
end sub
另外,用户可以在组合框里定义一个新的URL 并按Enter键,正如他们能够在商业浏览器里所作的一样。当按下Enter键时,就可以直接从Keypress事件处理器中简单地调用Combo1—Click事件处理器导航到这个新的URL:
private sub combo1_keypress(keyascii as integer)
if keyascii=vbkeyreturn then
combo1—click
end if
end sub
最后,当
下载过程结束时,WebBrowse控件激活了Downloadcomplet事件,此时就能够在浏览器的标题栏内显示当前的URL,正如任一商业浏览器一样。为此,必须从其Locationname属性中得到浏览器的当前URL:
private sub webbrowser1_downloadcompiete()
form1.caption=webbrowser1.locationname
…
end sub
还有,通过以下方法可以把URL加载到组合框列表的上层:
private sub webbrowser1.downloadcomplete()
form1.caption=webbrowser1.locationname
combo1.addltem ebbrower1.licationURL,0
end sub
现在,已经建立了Web浏览器并且用户可以通过组合框里键入URLS进行导航。这里将会为浏览器增加Back和 Forward按钮。
这比想像的恐怕还容易一些——使用浏览器的Goback或Goforward方法即可。可以照这样去做。通过检测那些按钮的键来决定工具条中的按钮是否被按下:
private sub toolbar1_buttonclick(byval button as button )
select case button.key
case ″back″
webbrowser1.goback
case ″forwdrd″
webbrowser1.goforward
end select
end sub
这就是所有要做的——用户可以在浏览器的记录中进行下一步和上一步的导航了。现在已经加载了Back和Forword按钮。
给Web浏览器加载Refresh、 Home 和Stop按钮
前面,已经建立了可以用用户键入和选择URLS组合框Web浏览器,如Back 和Forward按钮,让用户通过导航穿梭于浏览器的记录之中。然而,这里还有很多能实现其功能的按钮:Refresh、Home和Stop按钮。用户可以用Web浏览器的Refresh、Gohome和Stop方法分别实现这些按钮的功能。这里分别给出Refresh、Home和Stop 三个按钮的名称“Refresh”、“Home”和“Stop”,当匹配的按钮被按下时,调用响应的Web浏览器方法(注意用户按下Stop按钮,也可以使用Web浏览器的Locationname属性更新当前显示在浏览器标题栏里的URL):
private sub toolbar1_buttonclick(byval button as button
select case button.key
case ″back″
webbrowser1.goback
case ″forward″
webbrowse1.goforward
case ″refresh″
webbrowser1.refresh
case ″home″
webbrowser.gohome
case ″stop″
webbrowaer1.stop
me.caption=webbrowser1.locationname
end select
end sub
现在用户能够使用这些新按钮:Refresh、Home和Stop。