c++ findwindow函数_matlab中怎么查找函数的用法

c++ findwindow函数_matlab中怎么查找函数的用法FindWindow用来根据类名和窗口名来得到窗口句柄的。但是这个函数不能查找子窗口,也不区分大小写。如果要从一个窗口的子窗口中查找需要使用FindWindowEX。 函数功能:该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。   函数原型:HWNDFindWindowEx

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

FindWindow 用来根据类名和窗口名来得到窗口句柄的。但是这个函数不能查找子窗口,也不区分大小写。

如果要从一个窗口的子窗口中查找需要使用FindWindowEX。

 

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

    函数原型:HWND FindWindowEx(HWND hwndParent,HWND hwndChildAfter,LPCTSTR lpszClass,LPCTSTR lpszWindow);

    参数:

  1.     hwndParent:要查找子窗口的父窗口句柄。    如果hwnjParent为NULL,则函数以桌面窗口为父窗口,查找桌面窗口的所有子窗口。    Windows NT5.0 and later:如果hwndParent是HWND_MESSAGE,函数仅查找所有消息窗口。
  2.     hwndChildAfter :子窗口句柄。查找从在Z序中的下一个子窗口开始。子窗口必须为hwndPareRt窗口的直接子窗口而非后代窗口。如果HwndChildAfter为NULL,查找从hwndParent的第一个子窗口开始。如果hwndParent 和 hwndChildAfter同时为NULL,则函数查找所有的顶层窗口及消息窗口。
  3.     lpszClass:指向一个指定了类名的空结束字符串,或一个标识类名字符串的成员的指针。如果该参数为一个成员,则它必须为前次调用theGlobaIAddAtom函数产生的全局成员。该成员为16位,必须位于lpClassName的低16位,高位必须为0。
  4.     lpszWindow:指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为 NULL,则为所有窗口全匹配。返回值:如果函数成功,返回值为具有指定类名和窗口名的窗口句柄。如果函数失败,返回值为NULL。

C#中使用该函数首先导入命名空间:
using System.Runtime.InteropServices;

然后写API引用部分的代码,放入 class 内部

   //查找窗体
        [DllImport(“User32.dll”, EntryPoint = “FindWindow”)]
        public extern static IntPtr FindWindow(string lpClassName, string lpWindowName);

          [DllImport(“User32.dll”, EntryPoint = “FindWindowEx”)]
        public static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpClassName, string lpWindowName);

例如:查找qq2012窗口
  private void button2_Click(object sender, EventArgs e)
        {

            IntPtr maindHwnd = FindWindow(null, “qq2012”); //获得QQ登陆框的句柄  
            if (maindHwnd != IntPtr.Zero)
            {

                MessageBox.Show(“找到了!”);
              
            }
            else
            {

                MessageBox.Show(“没有找到窗口”);
            }
        }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql 加入�列,改动列,删除列。

    mysql 加入�列,改动列,删除列。

    2021年12月1日
    36
  • idea 查找与替换「建议收藏」

    idea 查找与替换「建议收藏」查找当前文件内容:ctrl+F如上图片查找全局文件:ctrl+shift+F或doubleshift(按两下)或ctrl+shift+N替换当前文件内容:ctrl+R如上图片

    2022年9月29日
    2
  • 站点页面静态化具体解释

    站点页面静态化具体解释

    2022年2月1日
    55
  • Python 数组截取

    Python 数组截取#数据源names=[‘a’,’b’,’c’,’d’,’e’,’f’]#正常获取print(names[1])#b#截取print(names[0:3])#[‘a’,’b’,’c’]print(names[3:10])#[‘d’,’e’,’f’]#截取:从指定开始直接到指定结尾print(names[3:])#[‘d’,’e’,’f’]print(names[:3])#[‘a’,’b’,’c’]#倒着切print(na

    2022年6月10日
    73
  • Linux从入门到指令详解

    Linux从入门到指令详解一、概述我们为什么要学习Linuxlinux诞生了这么多年,以前还喊着如何能取代windows系统,现在这个口号已经小多了,任何事物发展都有其局限性都有其天花板。就如同在国内再搞一个社交软件取代腾讯一样,想想而已基本不可能,因为用户已经习惯于使用微信交流,不是说技术上实现不了解而是老百姓已经习惯了,想让他们不用,即使他们自己不用亲戚朋友还是要用,没有办法的事情。用习惯了windows操作系统,再让大家切换到别的操作系统基本上是不可能的事情,改变一个人已经养成的习惯太难。没有办法深入到普通老百姓的生

    2022年6月5日
    29
  • 基于实践的LabVIEW零基础入门视频教程

    原文地址::http://blog.eeecontrol.com/LabVIEW1/《基于实践的LabVIEW零基础入门视频教程》资料不在多,而在于精,资料太多,反而会迷失方向,学习最怕的就是打乱仗,选择对的方向,比努力更重要,这也是本人的亲身经历!《基于实践的LabVIEW零基础入门视频教程》方向明确,适合零基础和初学者,针对性强,本课程将用项目与实践的方法带领大家零

    2022年4月5日
    57

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号