服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - 易语言 - 实例讲述易语言拦截窗口消息

实例讲述易语言拦截窗口消息

2022-01-11 15:48猪悟能 易语言

在本文里我们给大家详细讲述了易语言拦截窗口消息的相关知识点,并附了实例内容,有需要的朋友们可以学习下。

易语言等可视化编程已经将视窗消息封装为对象的属性、方法和事件。当我们在窗口中按下鼠标左键,欲出现信息“你点击了窗体”,在易语言中是这样编写的:

子程序:__启动窗口_鼠标左键被按下

返回值类型:逻辑型

参数:横向位置 数据类型:整数型

参数:纵向位置 数据类型:整数型

参数:功能键状态 数据类型:整数型

信息框 (“你点击了窗体”, 0, )

但是如果不用“__启动窗口_鼠标左键被按下”事件能否达到这样的结果?由于对象的事件也只不过是视窗消息的封装,所以我们可以用视窗消息实现这样的功能。

我们需要用到两个API函数:拦截窗口消息函数SetWindowLongA(置窗口信息)、回调函数CallWindowProcA(调窗口信息)。SetWindowLongA用于随时拦截各种窗口消息,通过判断不同的消息类型执行不同的代码(类似于易语言“事件”的作用);CallWindowProcA用于没有出现需要的消息类型时,将程序的消息返回到操作系统中,使操作系统继续用SetWindowLongA来拦截窗口消息。

实例讲述易语言拦截窗口消息

实例讲述易语言拦截窗口消息

源代码图例:

实例讲述易语言拦截窗口消息

以上就是易语言拦截窗口消息的大概步骤,感谢大家对服务器之家的支持。

原文链接:https://www.cnblogs.com/hackpig/archive/2010/02/14/1668251.html

延伸 · 阅读

精彩推荐