学习用VB制作浏览器
自己做浏览器?你在开玩笑吗?别说IE这种庞然大物,就算是小歌剧,我们大多数普通人都是坚决不弄出来的。但是如果你的机器安装了VB5.0专业版,事情就简单多了。你想试试吗?好,我们走吧!
程序的主角是一个ActiveX控件:WebBrowser。当然,VB的工具箱里默认没有,我们只能手动加入。方法是:右键单击工具箱,选择“零件...”在出现的快捷菜单中,确保在弹出的对话框中选择了“控件”选项卡,找到Microsoft Internet Controls,勾选其前面的小框,然后确认。此时,你会发现工具箱里多了两个小图标。其中,地球图标代表的控件,正是我们需要的WebBrowser。
由于很多人对WebBrowser控件并不熟悉,在VB的帮助中也没有关于它的内容(反正我也没找到),所以有必要介绍一下它的属性、方法和事件。由于篇幅有限,我们只涉及以下内容:
Property: LocationURL返回控件显示网页的URL。
方法:导航到指定的URL或打开指定的HTML文件。
事件:1。1号。DownloadBegin操作在启动时被触发。
2。当DownloadComplete的下载操作完成、终止或失败时触发。
3。ProgressChange Web浏览器控件跟踪下载过程并定期触发此事件。语法是:subweb browser _ progress change(byval progress为long,byval progress max为long)。Progress参数是当前下载的数据总量,ProgressMax参数是要下载的数据总量。
4。当当前文档的标题发生变化时触发title change
除了WebBrowser控件,程序还需要一个标签控件:Label1;一个ComboBox控件:combo1,用于显示URL地址;一个StatusBar控件:StatusBar1;一个ProgressBar控件:ProgressBar1,用于显示下载进度(StatusBar控件和ProgressBar控件是ActiveX控件Microsoft Windows Common Controls 5.0的成员,加入工具箱的方法与WebBrowser控件相同)。这些控件的属性值使用默认值。
以下是程序列表:
Option Explicit
Private subform _ load()
me . caption = " my explorer "
label 1 . caption = " URL "
combo 1。Text = ""
Combo1。Top = Label1。高度
组合1。Left = 0
WebBrowser1。Top =组合1。Top + Combo1。高度
网页浏览器1。left = 0
Form _ Resize
status bar 1。style = SBR simple
progress bar 1。ZOrder
End Sub
Private Sub Form _ Resize()
On Error GoTo a
combo 1。宽度= Form1。Width - 100
网页浏览器1。宽度=组合1。Width
网页浏览器1。高度= Form1。身高组合1。高度- 1000
进度条1。Top =我。身高-状态Bar1。身高- 330
进度条1。Left = 0.25 * StatusBar1。宽度
进度条1。宽度= 0.75 *我。width-250
a:
End Sub
Private combo 1 _ click()
`转到指定的URL
webbrowser 1 . navigate combo 1 . text
End Sub
Private Sub combo 1 _ KeyDown(key code为整数,Shift为整数)
Dim i As Long
Dim以布尔值形式存在
如果KeyCode =则Text,7) "http://"然后
Combo1。Text = "http://"+ Combo1。text
End If
webbrowser 1。导航组合1。i = 0到Combo1的文本
。ListCount - 1
If Combo1。列表(i) =组合1。text Then
existed = True
Exit For
Else
existed = False
End If
Next
If Not existed Then
combo 1AddItem (Combo1。text)
End If
End If
End
private subweb browser 1 _ download begin()
`下载开始时,状态栏显示“正在链接...”
StatusBar1。SimpleText = "正在链接..."
End Sub
Private Sub webbrowser 1 _ download complete()
`下载时,状态栏显示“链接已完成”
状态栏1.simpleText = "链接已完成"
Progress bar 1 . value = 0
End Sub
Private Sub webbrowser 1 _ Progress change(ByVal Progress As Long,
ByVal Progress max As Long)
`进度条更改时间value = Progress
End If
End Sub
Private Sub webbrowser 1 _ title change(ByVal Text As String)
combo 1。Text = WebBrowser1LocationURL
End Sub
0条评论