加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vb2008关闭消息框终于实现了,可以…

发布时间:2020-12-17 07:41:03 所属栏目:百科 来源:网络整理
导读:感谢不知名的网友提示: .net 和vb不一样。 窗口句柄之类的要声明称interger 32位的才行 如果在。net中 声明成long 那就执行不成功 Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String,ByVal lpWindowName
感谢不知名的网友提示:
.net 和vb不一样。 窗口句柄之类的要声明称interger 32位的才行 如果在。net中 声明成long 那就执行不成功

 Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String,ByVal lpWindowName As String) As Integer
    Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Integer,ByVal wMsg As Integer,ByVal wParam As Integer,ByVal lParam As Integer) As Integer
-----------------------------------------------------------------------------
'以下是我的测试程序,form1窗体里放了个button1,点击button1弹出消息,定时程序,自动关闭消息框。
'接下来关闭网页弹出消息应该就没问题了。

Private Sub Button1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Button1.Click
Call run_timer()
MsgBox("test")
End Sub
Sub Close_win()
Const WM_CLOSE = &H10
Dim hwnd As Long
hwnd = FindWindow("#32770","WindowsApplication1") ‘如果不知道窗体类,#32770,可以’用vbNullString 代替 ,可以用vs2008 的SPy++来查找类,"WindowsApplication1"是消息框的名称,自己灵活处理。
 If hwnd > 0 Then
 PostMessage(hwnd,WM_CLOSE,0&,0&)
 End If
 End Sub
 Sub run_timer()
 Dim mytimer As Timer = New Timer
 mytimer.Interval = 1000
 mytimer.Start()
 AddHandler mytimer.Tick,AddressOf Close_win
 End Sub
End Class

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读