Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >c语言findwindowex函数用法,VB中findwindowex函数的用法?

c语言findwindowex函数用法,VB中findwindowex函数的用法?

作者头像
全栈程序员站长
发布于 2022-09-03 09:58:06
发布于 2022-09-03 09:58:06
8890
举报

大家好,又见面了,我是你们的朋友全栈君。

FindWindowEx函数

函数功能:在窗口列表中寻找与指定条件相符的第一个子窗口 。

该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。

参数:(1)hwndParent:要查找的子窗口所在的父窗口的句柄(如果设置了hwndParent,则表示从这个hwndParent指向的父窗口中搜索子窗口)。

如果hwndParent为 0 ,则函数以桌面窗口为父窗口,查找桌面窗口的所有子窗口。

Windows NT5.0 and later:如果hwndParent是HWND_MESSAGE,函数仅查找所有消息窗口。

(2)hwndChildAfter :子窗口句柄。查找从在Z序中的下一个子窗口开始。子窗口必须为hwndParent窗口的直接子窗口而非后代窗口。如果HwndChildAfter为NULL,查找从hwndParent的第一个子窗口开始。如果hwndParent 和 hwndChildAfter同时为NULL,则函数查找所有的顶层窗口及消息窗口。

(3)lpszClass:指向一个指定了类名的空结束字符串,或一个标识类名字符串的成员的指针。如果该参数为一个成员,则它必须为前次调用theGlobaIAddAtom函数产生的全局成员。该成员为16位,必须位于lpClassName的低16位,高位必须为0。

(4)lpszWindow:指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为 NULL,则为所有窗口全匹配。

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

如果函数成功,返回值为具有指定类名和窗口名的窗口句柄。如果函数失败,返回值为NULL。

若想获得更多错误信息,请调用GetLastError函数。

声明:1.VB 声明

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

2.C# 声明

[DllImport(“user32.dll”, SetLastError = true)]

public static extern IntPtr FindWindowEx(IntPtr parentHandle, IntPtr childAfter, string className, string windowTitle);

3.VB .NET 声明

_

Private Shared Function FindWindowEx(ByVal parentHandle As IntPtr, _

ByVal childAfter As IntPtr, _

ByVal lclassName As String, _

ByVal windowTitle As String) As IntPtr

End Function

相关例子:

‘Example Name: Changing a VB Toolbar to a Rebar-Style Toolbar

BAS Moduel Code

Option Explicit

Public Const WM_USER= &H400

Public Const TB_SETSTYLE = WM_USER + 56

Public Const TB_GETSTYLE = WM_USER + 57

Public Const TBSTYLE_FLAT = &H800

Public Declare Function SendMessage Lib “user32” _

Alias “SendMessageA” _

(ByVal hwnd As Long, _

ByVal wMsg As Long, _

ByVal wParam As Long, _

lParam As Any) As Long

Public 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

‘–end block–‘

‘ Form Code

Option Explicit

Private Sub Form_Load()

With Combo1

.Width = Toolbar1.Buttons(“combo1”).Width

.Top = (Toolbar1.Height – Combo1.Height) \ 2

.Left = Toolbar1.Buttons(“combo1”).Left

.AddItem “Black” ‘ Add colours for text.

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/138370.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月3,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
vb.net_一个半成品
Imports System.Text Imports System.Runtime.InteropServices Public Class Form1 '引用win32api进行枚举窗体句柄操作 Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr Pri
landv
2018/05/24
8700
c++ findwindow函数_matlab中怎么查找函数的用法
FindWindow 用来根据类名和窗口名来得到窗口句柄的。但是这个函数不能查找子窗口,也不区分大小写。
全栈程序员站长
2022/09/21
1.3K0
VB6源码 webbrowser 自动登录网页批量下载文件 IE下载弹窗控制
VB6源码 webbrowser 网抓 自动登录网页批量下载文件 IE下载弹窗控制,网页元素控制等!!
办公魔盒
2019/07/22
2.6K0
C#FindWindowEx参数详解
函数功能:在窗口列表中寻找与指定条件相符的第一个子窗口。该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。
全栈程序员站长
2022/09/05
1.4K0
FindWindowEx()函数详解
函数功能:该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。
全栈程序员站长
2022/08/23
8720
C# 窗体常用API函数 应用程序窗体查找
常用的处理窗体的API函数如下(注意:API函数必须放在窗体中...): 使用C#语言,要引用DllImport,必须要添加using System.Runtime.InteropServices命名空间 (1)获得当前前台窗体句柄 [DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]public static extern IntPtr GetForegroundWindow(); 返回值类型是IntPtr,即为当前
逸鹏
2018/04/10
4.2K0
FindWindowEX应用实例二则[通俗易懂]
函数功能:该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。
全栈程序员站长
2022/08/23
6200
FindWindow和FindWindowEx
函数型:HWND FindWindow(LPCTSTR IpClassName,LPCTSTR IpWindowName); IpClassName :指向一个指定了类名的空结束字符串或一个标识类名字符串的成员的指针。如果该参数为一个成员,则它必须为前次调用theGlobaIAddAtom函数产生的全局成员。该成员为16位,必须位于lpClassName的低16位,高位必须为0。如果为NULL,将会寻找任何与lpWindowName参数匹配的窗口,IpWindowName:指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为空,则为所有窗口全匹配。 返回值:如果函数成功,返回值为具有指定类名和窗口名的窗口句柄;如果函数失败,返回值为NULL。
全栈程序员站长
2022/09/05
6570
借助API实现黑盒自动化测试工具的编写
  在日常编码过程中,我们常常会进行自动化测试。这里的自动化测试不是指单元测试,而是模拟人工输入来进行快速的、高并发的测试。可以使用的自动化工具有LOADRUNNER,以及目前在VS2010中的功能很强大的测试工作平台(录制操作步骤,自动生成代码)。但是,这些工具的熟练掌握也有一定的时间成本,并且,最主要的,对于一个程序员来说,那不够灵活。所以,比较高效的一个做法是,调用WINDOWS API,自己动手写编码来实现。
顾翔
2021/07/22
6810
FindWindowEx的用法「建议收藏」
#include <windows.h> #include <STDIO.H> BOOL myEnumWindow(HWND hwnd); int main() { myEnumWindow(NULL); return 0; }
全栈程序员站长
2022/09/04
1.2K0
C#_FindWindow
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Runtime.InteropServices; usin
landv
2018/05/24
9230
FindWindowEx使用方法「建议收藏」
功能:这个函数获取窗口句柄。类名和窗体名称和给定的字符串匹配形式。这个功能看起来子窗体,从在一个给定的子窗体子窗体回到下一个起始行。
全栈程序员站长
2022/08/23
1.8K0
Vb.net/VB 声明API功能父窗口功能[亲测有效]
回想第一次敲房费,他说自己是api函数实现父窗口及其子窗口最小化的功能。现在再次遇到,自己就在思考,能不能继续使用API函数呢?答案当然是Of Course!
全栈程序员站长
2021/12/18
8940
Vb.net/VB 声明API功能父窗口功能[亲测有效]
C#窗口句柄
在Windows中,句柄是一个系统内部数据结构的引用。例如当你操作一个窗口,或说是一个Delphi窗体时,系统会给你一个该窗口的句柄,系统会通知你:你正在操作142号窗口,就此你的应用程序就能要求系统对142号窗口进行操作——移动窗口、改变窗口大小、把窗口极小化为图标等。实际上许多 Windows API函数把句柄作为它的第一个参数,如GDI(图形设备接口)句柄、菜单句柄、实例句柄、位图句柄等,不仅仅局限于窗口函数。换句话说,句柄是一种内部代码,通过它能引用受系统控制的特殊元素,如窗口、位图、图标、内存块、光标、字体、菜单等。
全栈程序员站长
2022/09/14
6740
vb api函数用法_VB调用apdl
API的英文全称(Application Programming Interface),WIN32 API也就是MicrosoftWindows32位平台的应用程序编程接口,在window操作系统盛行的期间,程序员主要是利用API函数来开发Windows平台下的应用程序当时程序员必须熟记很多API函数。随着软件技术的不断发展,在Windows平台上出现了很所可视化编程环境(例如:VB,C,c++等)在这些编程环境中出现很多类和控件,他们代替了API的功能,实际上这些类和控件是封装了API函数集合。它们把常用的API函数的组合在一起成为一个控件或类库,并赋予其方便的使用方法,所以极大的加速了WINDOWS应用程序开发的过程。有了这些控件和类库,程序员便可以把主要精力放在程序整体功能的设计上,而不必过于关注技术细节。它们只提供WINDOWS的一般功能,对于比较复杂和特殊的功能来说,使用类库和控件是非常难以实现的,这时就需要采用API函数来实现。 这也是API函数使用的场合,所以我们对待API函数不必刻意研究每一个函数的用法,那也是不现实的(能用的到的API函数有几千个呢)。API不用去刻意学,只要用到的时候查看API帮助即可。
全栈程序员站长
2022/11/15
2.3K0
vb api函数用法_VB调用apdl
VB 子窗体被PictureBox控件挡住无法显示
   VB做机房收费系统的时候,用的MDI主窗体,在主窗体上加了一个Picturebox控件,运行的时候,点了子窗体,但是却没有出现,后来才发现,子窗体被Picturebox控件给当在了后面。
令仔很忙
2018/09/14
1.6K0
VBA使用API_03:创建窗体
使用Excel VBA要创建窗体非常的简单,直接插入一个用户窗体就可以了,VBA已经封装好了窗体,而且具有很多功能以及控件。
xyj
2020/07/28
2.1K0
VBA使用API_03:创建窗体
VB6对滚轮的支持
        我需要对Mapx控件支持鼠标滚轮,找了一个可以使用的代码,来自         http://blog.csdn.net/areful/archive/2007/10/19/1832010.aspx         需要注意的是,在FormLoad中增加Hook Map1.hWnd,在Form_Unload中增加UnHook Map1.hWnd         另外,在鼠标移动经过Map时,可以激发Map的mousemove事件,但滚轮无效,因为焦点不在Map上,可以用Map1.SetF
用户1075292
2018/01/23
1.1K0
VC Windows API获得桌面所有窗口句柄的方法
VC Windows API应用之GetDesktopWindow ——获得桌面所有窗口句柄的方法
全栈程序员站长
2022/07/15
1.9K0
python win32api中文手册_python 模拟鼠标和键盘输入
# FindWindow(lpClassName=None, lpWindowName=None) 窗口类名 窗口标题名
全栈程序员站长
2022/11/07
6.9K0
相关推荐
vb.net_一个半成品
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档