• 注册
  • 关于作者
    个人说明:他太懒了,什么都没有写
    关注 0 粉丝 0 喜欢 0 内容 238
    雅安
    聊天 送礼
    • 查看作者
    • vb模拟器webbrowser实战讲解之一

      不知道有没有看过我写过的(VB制作简单模拟器教程入门版)3篇文章引起了很多网友的反响,感谢各位对我长时间以来的支持和厚爱,这次的目的是将以前的基础知识运用到实践中,我们一起来完成一个注册器,新浪信箱注册器。

      这个程序调试制作环境:winXp,VB6.0简体中文企业版

      开始咯~

      很简单,打开你的vb,新建一个标准exe工程,添加2个Microsoft Internet Controls控件,添加一个标签控件,一个按钮和一个定时器,然后我们改一下名,工程名称:SinaMail,窗体名称:frmSina,WebBrowser:webSina,WebPop,标签:labStatus,按钮:cmdGo,定时器:timWeb,然后不要忘了存盘:)

      先来一起看看原理:我写程序最喜欢先研究原理了,只要原理明白了,一切都不是问题,

      VB制作简单模拟器教程入门版(二)

      VB学习

      其他的不介绍了,只介绍一下我们用到的webbrowser相关的部分

      WebBrowser.Navigate "
      http://net2sky.yeah.net/" 浏览一个网页

      WebBrowser.Busy 判断是否网页全部加载完毕

      WebBrowser_NewWindow2(ppDisp As Object, Cancel As Boolean) 有新新窗口请求弹出,我们要把ppDisp传一个webbrowser.object对像过去,否则就打开默认的浏览器显示弹出的窗口,或者Cancel=True就不弹出了。

      WebBroswser_StatusTextChange(ByVal Text As String) 浏览状态改变,当前状态保存在Text中

      正式写代码了:

      Private Sub Form_Load()

      webSina.Navigate "
      http://net2sky.yeah.net/"

      End Sub

      这一部分为vb窗体加载时执行的部分,我们让webSina去浏览我的主页,那里可是有一个弹出窗口啊,注意咯~

      Private Sub webSina_StatusTextChange(ByVal Text As String)

      labStatus.Caption = Text

      End Sub

      如果webbrowser当前状态改变,那么更新显示

      Private Sub webSina_NewWindow2(ppDisp As Object, Cancel As Boolean)

      Set ppDisp = webPop(0).Object

      End Sub

      我们用webPop(0)来拦截这个弹出的窗口并显示,可是在webPop中要是再有弹出窗口怎么办呢?

      Private Sub webPop_NewWindow2(index As Integer, ppDisp As Object, Cancel As Boolean)

      If index <= PopNum Then

      PopNum = PopNum + 1

      Load webPop(PopNum)

      End If

      Set ppDisp = webPop(index + 1).Object

      End Sub

      我们把webPop设为一个数组,只要在设计时把它的index属性设为0就可以了,然后声明一个模块级变量PopNum,不要告诉我看不懂上面的代码什么意思啊。

      Private Sub cmdGo_Click()

      webSina.Navigate "
      http://members.sina.com.cn/apply/"

      With timWeb

      .Interval = 2000

      .Enabled = True

      End With

      End Sub

      点击按钮就开始注册了至于那个网址怎么来的,到新浪主页(这个不会不知道把
      http://www.sina.com.cn)右上角有个,注册新会员把这个复制下来就可以了(点右键选复制快捷方式)

      Private Sub timWeb_Timer()

      If webSina.Busy = True Then Exit Sub

      Dim mTag As Object

      With webSina

      End With

      End Sub

      这个可是我们这次任务的重点咯~基本所有的任务都在这里完成的,一定要注意。

      If webSina.Busy = True Then Exit Sub 如国网页没有完全打开,那么跳出当前过程

      Dim mTag As Object定义一个变量,下次有很大的用处,今天先到这里了。

      VB制作简单模拟器教程入门版(二)

      VB学习

    • 0
    • 0
    • 0
    • 75
    • 单栏布局 侧栏位置: