苦笑的博客 发表于 2013-1-1 22:28:02

Postmessage函数

<div id="cnblogs_post_body">Fuction:
   该函数将一个消息放入(寄送)到与指定窗口创建的线程相联系消息队列里,不等待线程处理消息就返回,是异步消息模式。
Syntax:
B00L PostMessage(
    HWND hWnd,
    UINT Msg,
    WPARAM wParam,
    LPARAM lParam);

Parameters:
         hWnd:其窗口程序接收消息的窗口的句柄。
   Msg:指定被寄送的消息类型。
 wParam:指定附加的消息特定的信息。
  IParam:指定附加的消息特定的信息。

Return value :
如果函数调用成功,返回非零值:如果函数调用失败,返回值是零。

以上是此函数的用法,在读此文章前最好看下异步函数调用 以便文章的理解。
一般而言,如果我们想对某一窗口进行文本投递(发送字符串)或者进行一些外部操作(模拟按钮、鼠标点击)且不考虑返回结果的话,postmessage函数就是一个好的选择。下面分别从发送字符,发送字符串和模拟鼠标点击来进行分析:
一、发送字符

<div class="cnblogs_code">1 1 procedure SendChar();2 2 var3 3   h:HWND;4 4   S:char;5 5 begin6 6   S := 'd';7 7   postmessage(h,WM_CHAR,ord(S),0);8 8 end;
页: [1]
查看完整版本: Postmessage函数