delphi 消息简单实例

PostMessage只把消息放入队列,不管其他程序是否处理都返回,然后继续执行,这是个异步消息投放函数。而SendMessage必须等待其他程序处理消息完了之后才返回,继续执行,这是个同步消息投放函数。而且,PostMessage的返回值表示PostMessage函数执行是否正确;而SendMessage的返回值表示其他程序处理消息后的返回值。这点大家应该都明白。

         PostMessage 是异步的,SendMessage 是同步的。

          PostMessage 只把消息放到队列,不管消息是不是被处理就返回,消息可能不被处理;

          SendMessage等待消息被处理完了才返回,如果消息不被处理,发送消息的线程将一直处于阻塞状态,等待消息的返回。

 

const

      WM_DEALFRONTPRINTMESSAGE = WM_USER + 31;

procedure Twms_outbpound_wavetaskselectprint.setFonhFpBatchCode(

const Value: Integer);
begin
       Self.FonhFpBatchCode := Value;
       PostMessage(self.Handle,WM_DEALFRONTPRINTMESSAGE,0,0);
end;

procedure Twms_outbpound_wavetaskselectprint.WMdealFrontPrint(
var AMessage: TMessage);
begin
         getBackFrontPrintData(FonhFpBatchCode);
end;

end.

 

posted @ 2017-07-12 09:59  夏天的西瓜君  阅读(238)  评论(0编辑  收藏  举报