网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.用BCB5的打包程序打包BCB6.
.VB利用API函数设定屏幕颜色数.
.C/C++编程新手错误语录(续二).
.菜单程序.
.VC打造自己特色的屏幕保护.
.罗云彬VxD教程--虚拟8086模式的内.
.在CB中响应消息及自定义消息.
.点灯游戏算法实现.
.用c写CGI 程序简要指南.
.C语言中的三大定律.
.C++程序设计从零开始之何谓编程.
.C++ 内联函数.
.C++ SDK+Symbian开发入门之应用程.
.小议Windows CE 的下浏览器配置.
.用C++程序删除文本文件中以“//”.
.检测活动桌面是否激活.
.C语言编程常见问题解答之标准库函.
.取得汉字的笔画的源码(2).
.限次使用新法.
.新手入门:C++中堆内存(heap)的概.

Perform()与SendMessage()的不同

发表日期:2008-3-8



  就像Windows发送消息给应用程序一样,也可以有窗口与控件之间发送消息。C++ Builder提供了几种在一个应用程序内部发送消息的方式:调用Perform()(这种方式不依靠于Windows API),以及调用SendMessage(),PostMessage() API函数

Perform()
VCL的Perform()方法适用于所有的TControl派生对象。Perform()可以向任何一个窗件或控件发送消息,只需要知道窗体或控件的实例。Perform()需要传递3个参数:消息标识符,wParam和lParam。
Perform()是这样声明的:
int __fastcall Perform(unsigned Msg, int WParam, int LParam);
要给一个窗件或控件发送一个消息,可以参照下面的代码:
RetVal = ControlName->Perform(MessagID, wParam,lParam);
调用了Perform()后,它要等消息得到处理后才返回。Perform()把3个参数组装成TMessage记录,然后调用Dispatch()方法把消息传递给Windows的消息系统。

SendMessage()和PostMessage()
有的时候, 可能需要向一个窗口发送一个消息,而又不知道这个窗口的实例。例如:可能要给一个非C++ Builder的窗口发送一个消息,而只有这个窗口的句柄。幸运的是,Windows有两个API函数可以实现这一点:SendMessage()和PostMessage().这两个函数几乎是一样的,它们的区别是:
SendMessage()直接把一个消息发给窗口过程,等消息被处理后才返回。Postmessage()只是把消息发送到消息队列,完成后即返回。

SendMessage()和PostMessage()是这样声明的:
LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
BOOL PostMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);

hWnd 是接收消息的窗口的句柄
Msg 是消息标识符
wParam 是32位的特定附加信息。
lParam 是32位特定附加信息
上一篇:c语言中static变量 人气:740
下一篇:C++ 代码优化 人气:654
浏览全部C/C++的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐