NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
## **描述** 设置根据窗体标题得到窗口句柄,可以指定等待几秒检测指定标题的窗体是否出现,默认是等待10秒。 ## **语法** GetWindowByTitle(*strTitle[, intWaitSeconds = 10[, windowVisible = AllWindow]]*) **该语法中有下列命名参数:** | 参数 | 描述 | | --- | --- | | strTitle | 必须的。String类型,表示要查找的窗口的标题文字,需要写完整,如果期望通过部分关键词模糊查找可使用扩展函数:[GetWindowByTitleEx](GetWindowByTitleEx函数.md)。 | | intWaitSeconds | 可选的。Long 类型,表示等待超时时间。如果忽略,缺省值是 10,它表明最多等待10秒钟 | | windowVisible | 可选的。enumWindowVisible类型,表示指定所需要获得的窗口可见属性。如果忽略,缺省值是 AllWindow,它表明不管什么状态(可见&不可见)的窗口都获取。关于enumWindowVisible类型的介绍请参考下面“**enumWindowVisible类型的设置值**”表的介绍。 | **enumWindowVisible类型的设置值:** | 设置 | 描述 | | --- | --- | | HiddenWindow | 隐藏的窗口 | | DisplayedWindow | 显示的窗口 | | AllWindow | 以上两种窗口都包含 | ## **返回值** | clsWindow | | --- | | 返回值为本身,方便连写 | ## **示例** > 说明:获得计算器窗口的句柄。 > 测试方式1:先打开计算器,然后运行下面代码,将会获得计算器的窗口句柄。 > 测试方式2:关闭所有计算器,运行下面代码,然后再打开计算器(注意在10秒内),请留意下和上面的比较下看看有什么区别。 ``` Dim w As New clsWindow MsgBox w.GetWindowByTitle("计算器").hWnd ``` 注意,如果当前没有打开计算器那么程序将尝试寻找10秒钟然后放弃,如果在此期间你打开了计算器,函数会立马获得并返回。如果想自定义超时时间可以使用第2个参数,例如让它寻找3秒如果找不到目标窗口就放弃可以用下面代码: ``` Dim w As New clsWindow MsgBox w.GetWindowByTitle("计算器", 3).hWnd ``` 以上代码将在3秒内尝试寻找目标窗口,找不到就返回0,如果不想让函数尝试多次寻找窗口可以将第2个参数设置为0。 本函数一般适用于完整窗口标题匹配,如果要模糊匹配请用GetWindowByTitleEx函数。