wParam 和 lParam

这两个到底是什么,我咋就搞不明白呢。。可以获得键盘消息caseWM_CHAR:{//getthecharactercharascii_code=wParam;intkey... 这两个到底是什么,我咋就搞不明白呢。。可以获得键盘消息case WM_CHAR:
{
// get the character
char ascii_code = wParam;
int key_state = lParam;
还可以知道窗口的大小
case WM_SIZE:
cxClient = LOWORD(lParam);
cyClient = HIWORD(lParam);
展开
 我来答
金色潜鸟
推荐于2016-11-30 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5697万
展开全部
所有的Win API 程序 都有 一个 主程序 int WINAPI WinMain(。。。);
所有的Win API 程序 都有 一个 事件 循环控制处理 函数 WndProc();
键盘消息 是 事件中的 一种,当然可以 在 WndProc() 里 获得。

事件 来自 UINT message 参数
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam) {
switch(message)
{
case WM_CREATE: ...
case WM_LBUTTONDOWN: ..
case WM_PAINT: ..
case WM_SIZE: ..
case 各式各样 的 WM_xxxx 实际上是 事件的号码。
};
}
各式各样 的 WM_xxxx 实际上是 事件的号码。当 message 等于 WM_SIZE 时,表示显示窗的大小发生变化,
LOWORD(lParam); 是 WndProc 传进来的参数, WndProc 是这个参数的低位
HIWORD(lParam); 是这个参数的 高位。 哪个参数,它的高位是什么,低位是什么等等,都是 API 规定/约定 好的。
wParam 是 WndProc 函数第3个参数,lParam 是 WndProc 函数第4 个参数。
这两个参数含义 与 消息 message 有关。
WPARAM 是 无符号型 ( word 型)。
LPARAM 是 有符号长整数型。
更多追问追答
追问
然后呢?
不懂了~~
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式