转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> VB.NET程序 >> 正文
给自己的程序增加网页浏览功能         ★★★★

给自己的程序增加网页浏览功能

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1648 更新时间:2009/4/23 16:39:44
 

 给自己的程序增加网页浏览功能

有很多文章介绍了怎样在自己的程序中加入浏览网页的功能,我也曾经用VB制作自己的浏览器。大多是利用了SHDOCVW.DLL中的WEBBROWSER控件和INTERNET EXPLORER AUTOMATION。Shdocvw.DLL提供了COM接口,使得程序员可以在自己的程序中使用WEBBROWSER控件和INTERNET EXPLORER AUTOMATION。它还提供了系列的INTERNET API函数,给我们控制INTERNET EXPLORER。

如果大家想了解SHDOCVW.DLL提供了些什么给我们,可以用《高级VISUAL BASIC编程》(中国电力出版社)中TYPE LIBRARY EDITOR工具浏览SHDOCVW.DLL中的内幕。还可以用Exescope这个资源编辑工具看看SHDOCVW.DLL中有什么函数。

 

IE基本架构(摘自《程序员》专刊)

IEXPLORER.EXE

SHDOCVW.DLL–WEBBROWSER CONTROL AND INTERNET EXPLORER AUTOMATION页面显示

MSHTML.DLL – MSHTML,处理页面的语法分析,又是一个COM服务器,把HTML中的页面元素定义成对象,给客户端访问

HTML

ACTIVEX CONTROL

ACTIVEX SCRIPT ENGINE

JAVA APPLET

PLUG IN

 

在MSDN中有详细的帮助介绍WEBBROWSER控件和INTERNET EXPLORER AUTOMATION。它们的属性、方法和事件大部分相同,有部分属性和方法WEBBROWSER控件会忽略掉。SHDOCVW.DLL提供一个手段给我们把网页浏览功能加入到我们的程序中,或控制一个INTERNET EXPLORER实例。以下是一些我在应用中使用到的技巧,我以代码加说明的形式给出大家参考。

 

一、        工具栏

brwWebBrowser是一个WEBBROWSER控件的实例,CommandStateChange事件可以实现工具栏中的前进和后退的是否有效。

Private Sub brwWebBrowser_CommandStateChange(ByVal Command As Long, ByVal Enable As Boolean)

    Select Case Command

        Case CSC_UPDATECOMMANDS

''''            Me.tbToolBar.Buttons(1).Enabled = Enable

''''            Me.tbToolBar.Buttons(2).Enabled = Enable

 

 

        Case CSC_NAVIGATEFORWARD

‘工具栏的前进按扭的有效状态改变

            Me.tbToolBar.Buttons(2).Enabled = Enable 

‘工具栏的后退按扭的有效状态改变

        Case CSC_NAVIGATEBACK

            Me.tbToolBar.Buttons(1).Enabled = Enable

 

        Case Else

 

 

    End Select

End Sub

 

利用WEBBROWSER的方法进行导航

Private Sub tbToolBar_ButtonClick(ByVal Button As MSComctlLib.Button)

On Error Resume Next

    Select Case Button.Key

        Case "Back"

            brwWebBrowser.GoBack  ‘后退

        Case "Forward"

           

            brwWebBrowser.GoForward           ‘前进

        Case "Refresh"

            brwWebBrowser.Refresh  ‘刷新

        Case "Home"

            brwWebBrowser.GoHome ‘到主页

        Case "Search"

            Me.tbToolBar.Buttons("HtmlClass").Value = tbrUnpressed

            Me.tbToolBar.Buttons("History").Value = tbrUnpressed

            If Button.Value = tbrPressed Then

                Me.brwSearch.Visible = True

                Me.brwSearch.GoSearch

                m_blnIsSplitter = True

            Else

                Me.brwSearch.Visible = False

                Me.brwSearch.GoSearch

                m_blnIsSplitter = False

           

            End If

            Me.UCtlHistroy1.Visible = False

            Me.UCtlClassUrl1.Visible = False

            Call ResizeControls(m_blnIsSplitter, Me.imgSplitter.Left)

           

        Case "Stop"

                brwWebBrowser.Stop

    Me.Caption = brwWebBrowser.LocationName & "  -  " & strCurrentUserName

           

        Case "HtmlClass"

''''            If Button.Value = tbrPressed Then

''''                Me.tbToolBar.Buttons("History").Value = tbrUnpressed

''''                Me.tbToolBar.Buttons("Search").Value = tbrUnpressed

''''

''''                m_blnIsSplitter = True

''''                Me.UCtlClassUrl1.Visible = True

''''                Me.UCtlHistroy1.Visible = False

''''

''''                Me.UCtlClassUrl1.BuildTree (Normal)

''''

''''            Else

''''                m_blnIsSplitter = False

''''                Me.UCtlClassUrl1.Visible = False

''''                Me.UCtlHistroy1.Visible = False

''''            End If

''''            Call ResizeControls(m_blnIsSplitter, Me.imgSplitter.Left)

            Call mnuManClass_Cli

[1] [2] [3]  下一页


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台