发送消息(SendMessage)常识普及
点击阅读原文
现在易论坛很多人都喜欢在“发送消息”等操作时直接用数字,往往又不知道什么数字代表什么意思,也无从查起。
比如,有人说16是关闭窗口,那么请问17是什么?绝大部分的人不知道,即使你去问C++高手,也是绝大部分不知道的。
当初微软定义这些常量的时候,是为了让这些枯燥的数字更好记忆、阅读,可是现在很多易语言程序员却反其道行之,实在是不好的习惯。
我来说一下“发送消息---SendMessage”的基本知识。希望对大家有用。
首先,英文并不可怕,提倡中文编程是好事,完全排斥英文就不是好事了。在微软定义API、消息常量时,这些英文名称都是有含义的,而且大部分是生活中常用的英文单词。首先说一下SendMessage,这是Send(发送)+Message(消息)
再来说一下SendMessage的参数:
SendMessage(窗口句柄,消息,参数1,参数2)
消息一般为 WM_xxx相关的消息常量,比如WM_CLOSE,解释一下这里的WM=Window Message=窗口消息,CLOSE=关闭,这样一说就理解了吧?前两三个字母代表消息类型,后面的就是含义了,这样比你记数字不知道好多少。很多人用了那么久都不知道16是什么对不?可如果说Close的话,很多人都是知道的,毕竟这是常用英语单词,不说别的,家里的DVD等就有写类似单词。
后面的参数1、2,根据不同的消息,代表不同的含义,具体需要查MSDN,在MSDN里每个消息都有说明。
WM=Window(窗口)Message(消息)
WM_ACTIVATE=Window Message Activate(激活)
WM_COPY =Window Message Copy(复制)
WM_CLOSE =Window Message Close(关闭)
理解了之后,其实“发送消息”是很容易通过自己查询手册来实现某些功能的。Windows就是通过消息机制来控制窗口的,多查一下这些消息常量,很多常用的窗口操作都可以实现。
在此,我建议大家平常多用消息常量,少用数字,因为数字实在太难读了,根本没法单独从数字读懂意思。
另外,在易语言里使用这些常量需要自己手工声明,可能有的人嫌麻烦就直接填写了数字,其实自动声明常量的工具有很多,善用工具会让你事半功倍。
参考:http://blog.csdn.net/exiaoyin/article/details/51913018
补充:MSDN 的全称是 Microsoft Developer Network。一般我们平常所说的MSDN是指MSDN Library,程序员必备手册,涵盖了微软全套可开发产品线的技术开发文档和科技文献(部分包括源代码)。
发送消息(SendMessage)常识普及相关推荐
- Win32 API 发送消息 SendMessage/PostMessage
1. Windows消息 Windows是一个基于事件的操作系统, 事件的本质是对消息的封装, 如鼠标移动点击, 键盘按键, 窗口移动尺寸变化等都会发送相应的消息. Windows操作系统中包括以下几 ...
- SendMessage和PostMessage发送消息(不同进程传递字符串)
一.函数功能 SendMessage函数将指定的消息发送到一个或多个窗口.此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回.而函数PostMessage不同,将一个消息寄送到一个线程的消息 ...
- 融云发送图片消息_发送消息
发送消息 文本消息¶ import { sendMessage, ConversationType, ObjectName } from "rongcloud-react-native-im ...
- java发送苹果消息慢_Spring-boot JMS 发送消息慢的解决方法
Spring-boot JMS 发送消息慢的问题解决 @Service public class Producer { @Autowired private JmsMessagingTemplate ...
- ssm配置socket_ssm框架中集成websocket实现服务端主动向客户端发送消息
找了很多配置文档及实例说明,也还是没能成功,最终在csdn博客中发现了基于stomp的消息推送的文章, 下面整理自csdn博客,https://blog.csdn.net/u013627689/art ...
- Android笔记(三十一)Android中线程之间的通信(三)子线程给主线程发送消息...
先看简单示例:点击按钮,2s之后,TextView改变内容. package cn.lixyz.handlertest;import android.app.Activity; import andr ...
- C# 获得窗体句柄并发送消息(利用windows API可在不同进程中获取)
C#使用Windows API获取窗口句柄控制其他程序窗口 编写程序模拟鼠标和键盘操作可以方便的实现你需要的功能,而不需要对方程序为你开放接口.比如,操作飞信定时发送短信等.我之前开发过飞信耗子,用的 ...
- C# 重写WndProc及发送消息
阅读目录 重写WndProc方法来处理 Windows 消息 C# 重写WndProc 拦截 发送 系统消息 + windows消息常量值(2) C# 重写WndProc 拦截 发送 系统消息 + w ...
- C#中发送消息给指定的窗口到消息循环
public class Note { //声明 API 函数 [DllImport("User32.dll", EntryPoint = ...
最新文章
- 16~40K | 星猿哲科技招聘3D视觉算法工程师
- 软银机器人Pepper上岗必胜客,顾客可通过机器人预订披萨
- 成功解决OSError: [Errno 28] No space left on device
- 18c分布式事务 oracle_分布式事务的现象及理解
- c语言考试算法,c语言考试常用算法docx.docx
- python向数据库传输数据时弹出not enough arguments for format string怎么办
- 多功能时钟电路的设计框图_一种病理组织漂片多功能一体机的设计
- 201521123121 《Java程序设计》第14周学习总结
- HTTP返回代码代表的含义(403,404,500,502,504)
- 计算机日常知识试题,计算机基础知识及日常维护测试题
- 小技巧 ----- 关于Java中的System.arraycopy()
- 用Dart搭建HTTP服务器(1)
- 判断是否是质数 c++java
- adb ps shell 查看进程,如何使用ADB命令检测正在运行的应用程序
- Winform--处理MDI父窗体与子窗体的交互
- 思维导图ubuntu_Ubuntu——思维导图导安装和configuration area错误
- 笔记学习:关于如何使用ESPwifi模块与51单片机通信
- linux ext4 文件大小,刨根问底:ext3/ext4文件系统最大空间及单个文件大小演算法则...
- redis的配置文件修改
- JS 设置适配屏幕分辨率大小