一个有意思的API——WindowFromPoint

这个函数是这么定义:

HWND WindowFromPoint( POINT Point );

我们从他的定义可以看出,这个函数的作用是从一个点的位置的了对应对话框的句柄。

获得句柄我们可以干啥呢,我们可以继续根据句柄获得指向对对话框的指针,这样我们就可以干很多事情了。

下面我们写个小demo玩玩啦。

先建立一个MFC的简单对话框,Test;

重载WM_MOUSEMOVE消息,下其中添加下面的代码

    HWND hwnd = ::WindowFromPoint(point);
    ::PostMessage( hwnd , WM_CLOSE , NULL , NULL );

这样就可以完成鼠标知道那,就关到那的功能了。

时间: 2024-11-06 11:44:16

一个有意思的API——WindowFromPoint的相关文章

通过beego快速创建一个Restful风格API项目及API文档自动化(转)

通过beego快速创建一个Restful风格API项目及API文档自动化 本文演示如何快速(一分钟内,不写一行代码)的根据数据库及表创建一个Restful风格的API项目,及提供便于在线测试API的界面. 一.创建数据库及数据表(MySQL) #db--jeedev -- ---------------------------- -- Table structure for `app` -- ---------------------------- DROP TABLE IF EXISTS `a

一个有意思的需求——中文匹配度

引言 最近LZ带头在做一个互联网项目,互联网的东西总是那么新鲜,这也难怪大部分猿友都喜欢互联网.这个互联网项目不仅让LZ开发了一个HBase大数据应用,近期的一次需求讨论会上,又出来一个小需求,蛮有意思的.这些需求在之前枯燥的企业内部应用开发中,还是很难见到的,毕竟内部应用更多的是业务流程的体现. 具体的需求这里不方便透露,但简单的描述一下需求,就是如何判断两个公司名是一个.这其实就是Java当中字符串的相等判断,最简单的当然是用equals来判断.但是由于实际情况是,公司名是由客户手动输出的,

用PHP编写一个APP的API

第一部分,通信接口的实现 标签(空格分隔): PHP 手机后台 api 通信接口 Andy PHP开发手机API时,一般返回XML或JSON数据类型的数据,除了要返回从源数据(程序本身需要的数据)外还应附上状态码,以下是一段封装后的数据,它使用JSON格式展现: { code: 200, message: "Success", data: [ { username: "安明哲", password: "123456", level: "

做一个有意思的人

http://www.nowamagic.net/librarys/eight/posts/2545到底应该过一个有意义的人生,还是做一个有意思的人?什么样的人才是一个有意思的人.第一次读这篇文章,我就十分感概.我们从小受教育说要为社会做贡献,上班了被要求以公司为家,或许我们应该思考一下如何做一个有意思的人.这篇文章或许你看过,我觉得可以再看一遍. 作者:黄铁鹰 & 芮成钢 与几位好友们有一个共识:大家对一个人最高的评价是:“这是一个很有意思,很精彩的人”.大家以这个标准,来判断一个人是否值得成

CSAPP中一个有意思的小东西

回家的效率明显下降了,但是第三章还是快要结束的节奏.今天看到定长数组这里的时候,看到一个好玩的东西.在计算机的底层中,所有对数组的操作都是利用指针来完成的.数组其实也是一个很简单的数据结构,就是把一些最简单的数据类型合并在一段连续的内存区域上,这就是一个复合类型---数组. 学C语言的时候,大家都知道访问数组元素有两种方法,一种是利用数组名加索引的形式,另外一种就是利用指针加上偏移量的形式.在底层中,不管你用什么方式来访问元素,最后多会转化成对指针的操作. 在编写 代码的时候,编译器在编译过程中

Python一个有意思的地方:reduce、map、filter

今天阅读了关于Python函数式编程的系列文章,地址在这里: http://www.cnblogs.com/huxi/archive/2011/06/24/2089358.html 里面提到了四个内建迭代函数:reduce.map.filter.zip.其中zip是供同时迭代多个迭代器用的,这里就不讨论了.主要讨论剩下的三个. 我发现一个有意思的事情,就是剩下的三个函数,reduce.map和filter,三者可以相互转换.例如以reduce为基础,可以实现map和filter函数如下: 1 d

linux下一个有意思的问题(文件名以短划线或空格开头)

linux下一个有意思的问题(文件名以短划线开头) 这本是无意中的一个发现. 在linux下,文件名中含有 - 是没有问题,但是如果文件名是以-作为第一个字符的,那么就比较麻烦了. 问题演示 看这里,以短划线开头的文件名似乎对mv cp  rm   等操作免疫了.利用这个特性可以制造出一些比较麻烦的文件或者文件夹来. [email protected]:~$ ls -python.md [email protected]-pc:~$ mv -python.md 5-python.md mv:无效

一个有意思的类扩展 有效解决判空问题

public static class ClassExtensions { public static TResult GetProperty<TClass, TResult>(this TClass obj, Func<TClass, TResult> func) where TClass : class { if ((object) obj == null) return default (TResult); else return func(obj); } public st

一个有意思的CSS样式库--BUTTONS

我最近发现了一个有意思的CSS样式库,和Bootstrap相似,但是它是专门的一个高度可定制的,免费的并且开源的按钮CSS样式库,这里附上它的网址:http://www.bootcss.com/p/buttons/ 接下来介绍怎么使用这个CSS样式库,如上图,进入网址后,点击下载,会出现一个全是代码的网页,然后鼠标右键点击全选,复制,这里的代码就是这个BUTTONS的CSS样式代码, 再接下来就是在你的编辑器中创建一个css文件,然后将所复制的代码全部粘贴上去即可,然后就可以编写你的HTML代码