作者在 2011-04-15 11:02:08 发布以下内容
函数型:HWND FindWindow(LPCTSTR lpClassName,LPCTSTR lpWindowName);
功能:该函数返回一个顶层窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数不查找子窗口,在查找时不区分大小写。
参数:
lpCalssName:指向一个指定了类名的空结束字符串,或一个标识类名字符串的成员的指针。如果这个参数是一个成员,那么它必须是一个在调用此函数前已经通过 GlobalAddAtom 函数产生的全局成员。该成员为16位,必须被放置在 lpClassName的 低位字节中,lpClassName的高位字节置零。
lpWindowName:指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为空,则为所有窗口全匹配。
返回值:如果函数成功,返回值为具有指定类名和窗口名的窗口句柄,如果函数失败,返回值为Null
示例:如已经打开了一个名为001.txt的文本文档,获取该文档窗口的句柄
'API函数声明
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Command1_Click()
Dim handle As Long
'指定类名和窗口名,获得句柄
handle = FindWindow("notepad", "001.txt - 记事本")
MsgBox handle
'指定类名,不指定窗口名。表示字符串为空,此处应使用vbNullString
handle = FindWindow("notepad", vbNullString)
MsgBox handle
'指定窗口名,不指定类名
handle = FindWindow(vbNullString, "001.txt - 记事本")
MsgBox handle
End Sub
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Sub Command1_Click()
Dim handle As Long
'指定类名和窗口名,获得句柄
handle = FindWindow("notepad", "001.txt - 记事本")
MsgBox handle
'指定类名,不指定窗口名。表示字符串为空,此处应使用vbNullString
handle = FindWindow("notepad", vbNullString)
MsgBox handle
'指定窗口名,不指定类名
handle = FindWindow(vbNullString, "001.txt - 记事本")
MsgBox handle
End Sub