请教API函数sendmessage问题

sino_liuq 2002-03-04 03:32:10
Windows API 中有函数sendmessage,定义如下
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

其中变量wMsg:long为消息的标识符,
请问谁能告诉我Windows都有哪些消息标识符,或者哪里有这方面的介绍?
...全文
75 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengnick 2002-03-04
  • 打赏
  • 举报
回复
up
sonicdater 2002-03-04
  • 打赏
  • 举报
回复
你在 MSDN 中查 WIN32API 的时候, 在具体每个 API 函数说明中都有 相关参数 或 这些 参数的 连接. 你既可 找到 这些.

你也可以 在 MSDN 的 USER INTERFACE 中找到 这些 常数.
不过 在 MSDN 中是 找不到 这些常数的值的.

如果需要 常数值,则可在 api viewer 之类的工具中 查找,也可 直接在 头文件中找, 如 : Winuser.h
===================================================================
sino_liuq 2002-03-04
  • 打赏
  • 举报
回复
可能我不太会用MSDN的搜索功能,
我在MSDN里搜索"message","messages","button messages"都得不到我想要的内容,可是button messages的内容明明有的,不知道为什么就是搜索不到。不知各位对此有何高见,是不是我的使用方法不对。
不过我在SDK下已经找到了message,挺多的。
Sunnuy 2002-03-04
  • 打赏
  • 举报
回复
sdk里都有,在MSDN中查找,sonicdater(发呆呆(我答问题*不吵架*因为我呆)) 讲得很详细。
ferrytang 2002-03-04
  • 打赏
  • 举报
回复
sdk里都有的
sonicdater 2002-03-04
  • 打赏
  • 举报
回复
以下是常用的 消息.( 其它消息 请参考 MSDN )
它们具体值 请 参考 Api Viewer
=====================
Buttons

BM_CLICK button被点击 消息
BM_GETCHECK 用于check boxes 或radio boxes 。查看 是否 checked 了。

BM_GETSTATE 发送此消息,可返回 button 的状态,如 是否被 checked;是否 可用(不可用就 变灰了)

BM_SETCHECK 如果 已经 checked 了,发送此消息后,变为 unchecked,就是 那个钩钩 没被 选上。ok?

BM_SETSTATE 设置 button被 点击 状态。

====================
Combo Boxes

CB_ADDSTRING 添加 字符串到 Combo Boxes 。
CB_DELETESTRING 删除 Combo Boxes 中的 条目,既 item
CB_GETCOUNT 得到 Combo Boxes 条目 item 的 数目
CB_GETCURSEL 返回 Combo Boxes 中被选 条目 在 Combo Boxes 中 的位置,第一条为0 。
如果 没有 条目或出错,则返回 -1

CB_GETDROPPEDSTATE 发送此消息,可判断 Combo Boxes 的list box 是否被 放下,如果 是,返回 非零值,不是,则 返回 0

CB_GETLBTEXT 得到 combo box 的 条目 的text。 返回值 是 这个text 的长度。
CB_GETLBTEXTLEN 返回值 是 条目的 text 的长度。
CB_INSERTSTRING 插入 字符串 条目到 combo box 中
CB_RESETCONTENT 清空 combo box 所有条目
CB_SETCURSEL 设置 combo box 被选 条目。
CB_SHOWDROPDOWN 让 combo box 的listbox 下拉。 既 显出 所有 条目
===================
Edit Controls

EM_CANUNDO 决定 上一次操作 是否可以 undo (撤消操作)。如果可以,则可发送 EM_undo

EM_GETFIRSTVISIBLELINE 在 multi-line 控件中,找到 最上层的 可见的 行号。次行号是相对于 所有行的。

EM_GETPASSWORDCHAR 返回 密码框的 字符集。既 是查看密码。
EM_GETSEL 返回在 可编辑 控件中 ,被选择(HIGHLIGHT高量选择)的字符集 的 起点 和终点的 位置。
用 sendmessage 的wParam 参数 返回 起点位置,lParam 返回 终点位置
EM_REPLACESEL 用不同的字符串 替换 可编辑 控件 中的 字符串,如果 可编辑 控件中 没有 字符串,则 此消息变为 添加 字符串
EM_SETPASSWORDCHAR 在可编辑 控件中 设置 密码字符集 ,既 用* 代替
EM_UNDO 发送 操作 撤消 消息。
======================
IP Address Control
===================

IPM_CLEARADDRESS 清除 IP 地址控件(IP Address control)的内容
IPM_GETADDRESS 从IP 地址控件 获得 存储在 它中的 IP 地址 信息/
IPM_ISBLANK 决定 IP 地址控件 是否可以为 空值。既 127.0.0.1 之类的地址 为 空。
IPM_SETADDRESS 在 IP 地址控件中设置 IP 地址。
IPM_SETFOCUS 在 IP 地址控件中,当需要输入 IP 地址时, 使之获得 键盘输入 焦点
IPM_SETRANGE 设置 输入IP 地址的有效范围
=====================
Media Control Interface (MCI)
=============================
MM_MCINOTIFY 告诉 窗体 MCI 命令 完成的状态. 这个 状态包括 success, failure, 或 其它事件

Menus
=============================
WM_COMMAND 当 用户 选择 菜单中的 项目后,将向 窗体 发送此消息. 窗体 受到 此消息后,再 决定 下一个 行为

WM_INITMENU 当 菜单 准备 显示 前,向 窗体发送 此消息, 窗体 将 初始化 菜单 项.

WM_SYSCOMMAND 向 窗体 发送 用户点击 系统菜单 消息. 窗体将 响应 这个消息 ,决定 下个 行为.
================
Windows
=====================

WM_CLOSE 发送 让窗体关闭的消息,有些窗体会 在此时 弹出个 关闭对话框。

WM_GETTEXT 返回 窗体 标题栏 (caption 属性)。 需要先 用WM_GETTEXTLENGTH 获得 字符串长度

WM_GETTEXTLENGTH 见上!

WM_HELP 发送此 消息后,将 显示 指定的 HELP 文件
WM_SETTEXT 设置 窗体 标题栏 。
==============================
List Boxes
===============

LB_ADDSTRING 在条目中添加 字符串

LB_DELETESTRING 删除一个 条目. 条目 序号是从 0 开始的.

LB_GETCOUNT 得到 条目总数.

LB_GETCURSEL 得到 单选 的list box 的 选项条目的 序号

LB_GETSEL 判断 list 的 条目 是否被选上, 如果 选上了,则返回 >0 的值.否则 返回 0 ,表示 用户没选择条目

LB_GETSELCOUNT 获得 可多选 的list , 被用户选择的条目的个数.

LB_GETSELITEMS 返回 可多选的list 的 被选条目的 序号. 可返回 数组.

LB_GETTEXT 得到 list中的 一个 条目的 text 值
LB_GETTEXTLEN 得到 list中的 一个 条目的 text 值的长度
LB_INSERTSTRING 在list 中,插入 一个条目。如果成功,将返回 插入后,此条目的序号。
LB_RESETCONTENT 清空 所有的 list 中的 条目。
LB_SETCURSEL 对单选 的list box, 设定 用户 选择条目的 具体值
LB_SETSEL 对多选 的list box, 设定 用户 选择条目的 具体值
=======================================================
Mouse
==================
WM_LBUTTONDBLCLK 当鼠标在一个窗体范围内时,告诉此窗体 鼠标左键 已双击 。返回值 0

WM_LBUTTONDOWN 当鼠标在一个窗体范围内时,告诉此窗体 鼠标左键 已点击,返回值 0
WM_LBUTTONUP 当鼠标在一个窗体范围内时,告诉此窗体 鼠标左键 已释放,返回值 0

WM_MBUTTONDBLCLK 当鼠标在一个窗体范围内时,告诉此窗体 鼠标中键 已双击 。返回值 0
WM_MBUTTONDOWN 当鼠标在一个窗体范围内时,告诉此窗体 鼠标中键 已点击,返回值 0
WM_MBUTTONUP 当鼠标在一个窗体范围内时,告诉此窗体 鼠标中键 已释放,返回值 0

1,488

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧