vb关闭指定窗体

long8858 2010-06-16 09:38:22
vb 如何关闭指定窗体
知道窗体的标题 如何根据窗体的的标题关闭指定窗体!!
...全文
361 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
long8858 2010-06-17
  • 打赏
  • 举报
回复
谢谢您chenjl1031 问题解决!让您费心了!!
东方之珠 2010-06-17
  • 打赏
  • 举报
回复
If InStr(1, WindowCaption, Form1.TEXT1.TEXT) > 0 Then
东方之珠 2010-06-17
  • 打赏
  • 举报
回复
什么变量未定义?
long8858 2010-06-17
  • 打赏
  • 举报
回复
等待!!!
ylmedia 2010-06-17
  • 打赏
  • 举报
回复
来晚了...
long8858 2010-06-17
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 chenjl1031 的回复:]
引用 10 楼 long8858 的回复:
引用 4 楼 chenjl1031 的回复:
VB code
'标准模块
Option Explicit

'Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName A……
[/Quote]
出现了错误!变量未定义!!该怎么改呢!麻烦您详细点!
东方之珠 2010-06-17
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 long8858 的回复:]
引用 4 楼 chenjl1031 的回复:
VB code
'标准模块
Option Explicit

'Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCou……
[/Quote]
可以。窗口标题可以全部或部份标题内容:
If InStr(1, WindowCaption, TEXT1.TEXT) > 0 Then
long8858 2010-06-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 chenjl1031 的回复:]
VB code
'标准模块
Option Explicit

'Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
'Pu……
[/Quote]
错了!先跟您说对不起!这个代码可以用!!但是我想这个!
If InStr(1, WindowCaption, "窗体的标题") > 0 Then
的窗口标题能不能用TEXT1.TEXT来代替呢!!该怎么做呢!
long8858 2010-06-17
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 zhao4zhong1 的回复:]
shell("NirCmd.exe win close title ""要找的窗口标题""",vbHide)
[/Quote]
测试出错!!!!
long8858 2010-06-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 chenjl1031 的回复:]
VB code
'标准模块
Option Explicit

'Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
'Pu……
[/Quote]
经测试出错!!!!!!!!!!
请问还有哪些高手有方法呢!
赵4老师 2010-06-17
  • 打赏
  • 举报
回复
shell("NirCmd.exe win close title ""要找的窗口标题""",vbHide)
赵4老师 2010-06-17
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 long8858 的回复:]
引用 7 楼 zhao4zhong1 的回复:
shell("NirCmd.exe win close title ""要找的窗口标题""",vbHide)

测试出错!!!!
[/Quote]
你不会在网上搜NirCmd.exe这个工具软件啊?
hfCoder 2010-06-16
  • 打赏
  • 举报
回复
不懂,up
东方之珠 2010-06-16
  • 打赏
  • 举报
回复
'标准模块
Option Explicit

'Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
'Public Declare Function EnumChildWindows Lib "user32.dll" (ByVal hWndParent As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Public Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Boolean
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long
Private Const WM_CLOSE As Long = &H10&

Public Function EnumWindowsProc(ByVal hwnd As Long, ByVal lParam As Long) As Boolean
Dim WindowCaption As String, LengthCaption As Long, WindowClassName As String * 256
LengthCaption = GetWindowTextLength(hwnd)
WindowCaption = Space(LengthCaption)
Call GetWindowText(hwnd, WindowCaption, LengthCaption + 1)
'Call GetClassName(hwnd, WindowClassName, 256)
'WindowClassName = Left(WindowClassName, InStr(WindowClassName, Chr(0)) - 1)
If InStr(1, WindowCaption, "窗体的标题") > 0 Then
SendMessage hwnd,WM_CLOSE,0&,0& '关闭指定窗体标题的窗体
End If
EnumWindowsProc = True
End Function


'窗体Form1代码
Option Explicit
'窗体上添加一个命令按钮Command1
Private Sub Command1_Click()
EnumWindows AddressOf EnumWindowsProc, ByVal 0&
End Sub
long8858 2010-06-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 long8858 的回复:]
vb 如何关闭指定窗体
知道窗体的标题 如何根据窗体的的标题关闭指定窗体!!
[/Quote]
PostMessage这个不太会用!能详细说说这个函数怎么用呢!
long8858 2010-06-16
  • 打赏
  • 举报
回复
能不能具体一点!不太懂!!
孤独剑_LPZ 2010-06-16
  • 打赏
  • 举报
回复
用FindWindow取得句柄,PostMessage关闭

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧