jinyuwei 发表于 2014-7-30 09:07:45

VB中findwindowex函数的用法。

Private Sub Command1_Click()
    hWnd2 = FindWindow(vbNullString, "计算器")
    MsgBox hWnd2, , "。"
    hwnd = FindWindowEx(vbNullString, hWnd2, "edit", vbNullString)
    MsgBox hwnd, , "   "

End Sub
我这样来。hwnd这句话就有问题。说什么函数或接口标记为限制或VB使用了不支持的自动类型 类型错应该不会,我定义过也是这样错的。 麻烦再附上之后给计算器的"edit"类用sendmessage函数发送一个字符串str1的代码

qinyi75 发表于 2014-7-30 09:08:29

寻找窗口列表中第一个符合指定条件的顶级窗口(在vb里使用:FindWindow最常见的一个用途是获得ThunderRTMain类的隐藏窗口的句柄;该类是所有运行中vb执行程序的一部分。获得句柄后,可用api函数GetWindowText取得这个窗口的名称;该名也是应用程序的标题)

返回值:Long,找到窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError

参数:lpClassName ----String,指向包含了窗口类名的空中止(C语言)字串的指针;或设为vbNullString,表示接收任何类

lpWindowName ---String,指向包含了窗口文本(或标签)的空中止(C语言)字串的指针;或设为零,表示接收任何窗口标题

很少要求同时按类与窗口名搜索。为向自己不准备参数传递一个零,最简便的办法是传递vbNullString常数
示例
Dim hw& , cnt&
Dim rttitle As String * 256
hw&= FindWindow("ThunderRT5Main", vbNullString) ' ThunderRTMain under VB4
cnt = GetWindowText(hw& , rttitle, 255)
MsgBox Left$(rttitle, cnt), 0, "RTMain title"
页: [1]
查看完整版本: VB中findwindowex函数的用法。