1.新建三个命令按钮Command1命名“写字”,Command1命名“禁用”,Command1命名“关闭”;2.在窗体写下如下代码:
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function EnableWindow Lib "user32" (ByVal hwnd As Long, ByVal fEnable As Long) As Long
'该程序在VB6.0下由shumu_qing测试通过
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_CLOSE = &H10
Private Const WM_SETTEXT = &HC
Private Sub Command1_Click()
Dim WindowHandle As Long, ChildWindowHandle As Long
WindowHandle = FindWindow(vbNullString, "无标题 - 记事本")
If WindowHandle Then '如果获取句柄成功
ChildWindowHandle = FindWindowEx(WindowHandle, 0, "Edit", vbNullString)
If ChildWindowHandle Then '如果成功获取子句柄
SendMessage ChildWindowHandle, WM_SETTEXT, 0, ByVal CStr("hello") '发送hello消息
Else
MsgBox "无法获取子窗口", vbCritical, "提示"
End If
Else
MsgBox "无法获取窗口", vbCritical, "提示"
End If
End SubPrivate Sub Command2_Click()
Dim WindowHandle As Long, ChildWindowHandle As Long
WindowHandle = FindWindow(vbNullString, "无标题 - 记事本")
If WindowHandle Then '如果获取句柄成功
ChildWindowHandle = FindWindowEx(WindowHandle, 0, "Edit", vbNullString)
If ChildWindowHandle Then '如果成功获取子句柄
EnableWindow ChildWindowHandle, False '禁用子窗口
Else
MsgBox "无法获取子窗口", vbCritical, "提示"
End If
Else
MsgBox "无法获取窗口", vbCritical, "提示"
End If
End SubPrivate Sub Command3_Click()
Dim WindowHandle As Long
WindowHandle = FindWindow(vbNullString, "无标题 - 记事本")
If WindowHandle Then '如果获取句柄成功
SendMessage WindowHandle, WM_CLOSE, 0, 0 '关闭窗口
Else
MsgBox "无法获取窗口", vbCritical, "提示"
End If
End Sub
温馨提示:答案为网友推荐,仅供参考