VC++ PostMessage 的使用

用PostMessage给另一个程序窗口按钮发送WM_LBUTTONUP消息,该怎样使用,wparam,lparam怎样得到?请不要复制其他网页中的答案,谢谢!... 用PostMessage给另一个程序窗口按钮发送WM_LBUTTONUP消息,该怎样使用,wparam,lparam怎样得到?请不要复制其他网页中的答案,谢谢! 展开
 我来答
cooke1234
推荐于2016-11-02 · TA获得超过6861个赞
知道大有可为答主
回答量:4617
采纳率:72%
帮助的人:3589万
展开全部

WindowsAPI函数功能:

    该函数将一个消息放入(寄送)到与指定窗口创建的线程相联系消息队列里,不等待线程处理消息就返回,是异步消息模式。消息队列里的消息通过调用GetMessage和PeekMessage取得。

函数原型:

BOOLWINAPIPostMessage(HWNDhWnd,UINTMsg,WPARAMwParam,LPARAMlParam);

   

参数说明:

hWnd:其窗口程序接收消息的窗口的句柄。可取有特定含义的两个值:

    HWND_BROADCAST:消息被寄送到系统的所有顶层窗口,包括无效或不可见的非自身拥有的窗口、 被覆盖的窗口和弹出式窗口。消息不被寄送到子窗口

    NULL:此函数的操作和调用参数dwThread设置为当前线程的标识符

Msg:指定被寄送的消息。

wParam:指定附加的消息特定的信息。

IParam:指定附加的消息特定的信息。

返回值:如果函数调用成功,返回非零,否则函数调用返回值为零

使用信息:

Windows NT: 3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;

头文件:winuser.h;

输入库:user32.lib;

Unicode:在Windows NT环境下以Unicode和ANSI方式实现。


C语言调用范例:

下面的示例演示如何使用 PostMessage 函数向专用窗口发布消息。

#defineWM_COMPLETE(WM_USER+0)  //自定义的专用窗口消息

//您可以可以使用如下的代码发布消息到创建了指定的窗口的线程的消息队列中

WaitForSingleObject(pparams->hEvent,INFINITE);
lTime=GetCurrentTime();
PostMessage(pparams->hwnd,WM_COMPLETE,1,lTime);
Dasparion
推荐于2018-03-14 · TA获得超过223个赞
知道答主
回答量:403
采纳率:0%
帮助的人:219万
展开全部
#include <windows.h>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
HWND hwnd ;
hwnd = FindWindow(NULL,"计算器") ;
PostMessage(hwnd,WM_LBUTTONUP,NULL,NULL) ;
return 0;
}

PostMessage 有四个参数:目标窗口句柄,目标信息,wparam,lparam
wparam,lparam 是附加信息,直接写 NULL 既可
窗口句柄可以使用 FindWindow 找到
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式