MFC函数笔记.doc_第1页
MFC函数笔记.doc_第2页
MFC函数笔记.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SendMessageLRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam); 参数: hWnd:其窗口程序将接收消息的窗口的句柄。如果此参数为HWND_BROADCAST,则消息将被发送到系统中所有顶层窗口,包括无效或不可见的非自身拥有的窗口、被覆盖的窗口和弹出式窗口,但消息不被发送到子窗口。 Msg:指定被发送的消息。 wParam:指定附加的消息特定信息。 IParam:指定附加的消息特定信息。 返回值:返回值指定消息处理的结果,依赖于所发送的消息。memsetvoid *memset(void *s, int ch, size_t n); 函数解释:将s中前n个字节替换为ch并返回s; memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法1。CAsyncSocket:AsyncSelect调用该成员函数的请求事件通知套接字。BOOL AsyncSelect( long lEvent = FD_READ | FD_WRITE | FD_OOB | FD_ACCEPT | FD_CONNECT | FD_CLOSE );参数 lEvent指定网络活动的组合应用程序感兴趣的位掩码。 FD_READ 希望接收准备的通知阅读。 数据,则可读取时,FD_WRITE 希望接收通知。 FD_OOB 希望接收带外数据到达的通知。 FD_ACCEPT 希望接收传入连接的通知。 FD_CONNECT 希望接收连接结果的通知。 当套接字由对等类时,关闭FD_CLOSE 希望接收通知。如果基类和派生类都定义了相同名称的成员函数,那么通过对象指针调用成员函数时,到底调用哪个函数,要根据该指针的原始类型而定,而不是视指针实际所指的对象类型而定。如果用了虚函数,这些情况就不存在了。虚函数的总结: 1.如果想在派生类中重新定义一个成员函数,那么就应该在基类中把该函数设为virtual。 2.以单一指令调用不同函数(这句话不好理解,下面会解释),这种性质就是多态。 3.虚函数是C+语言的多态性质和动态绑定的关键。 4.既然抽象类中的虚函数不打算被调用,我们就不应该定义它,应该把它设为纯虚函数(在函数声明后加上=0即可)。 5.拥有纯虚函数的类叫做抽象类,不能产生出对象实例,但是可以拥有指向抽象类的指针,以便于操作抽象类的各个派生类。 6.虚函数派生下去仍是虚函数,而且可以省略virtual关键词。AfxMessageBox()与MessageBox()的区别 AfxMessageBox的函数原型int AfxMessageBox( LPCTSTR lpszText, UINT nType = MB_OK, UINT nIDHelp = 0 );int AFXAPI AfxMessageBox( UINT nIDPrompt, UINT nType = MB_OK, UINT nIDHelp = (UINT) 1 );在 第一种形式中,lpszText表示在消息框内部显示的文本,消息框的标题为应用程序的可执行文件名(如Hello)。在第二种形式 中,nIDPrompt为要显示的文本字符串在字符串表中的ID。函数调用时会自动从字符串表中载入字符串并显示在消息框中。nType为消息框中显示的 按钮风格和图标风格的组合,可以采用|(或)操作符组合各种风格。 按钮风格MB_ABORTRETRYIGNORE 消息框中显示Abort、Retry、Ignore按钮MB_OK 显示OK按钮MB_OKCANCEL 显示OK、Cancel按钮MB_RETRYCANCEL 显示Retry、Cancel按钮MB_YESNO 显示Yes、No按钮MB_YESNOCANCEL 示Yes、No、Cancel按钮图标风格MB_ICONINFORMATION 显示一个i图标,表示提示MB_ICONEXCLAMATION 显示一个惊叹号,表示警告MB_ICONSTOP 显示手形图标,表示警告或严重错误MB_ICONQUESTION 显示问号图标,表示疑问与AfxMessageBox类似的函数MessageBox,它是CWnd的类成员函数:int MessageBox( LPCTSTR lpszText,LPCTSTR lpszCaption = NULL,UINT nType = MB_OK );两个函数的区别:AfxMessageBox比 MessageBox简单一些,因为它是一个全局函数所以不需要对应的一个窗口类,但是不能控制消息框标题,常用于调试程序时的内部数据输出或警 告;MessageBox比较正式,常用在要提交的应用程序版本中,可以控制标题内容而不必采用含义不明的可执行文件名为标题。举例:AfxMessageBox(“Are you sure?”,MB_YESNO|MB_ICONQUESTION);int a = MessageBox(TEXT( 是否确认删除? ), TEXT(Warning!),4);if (a = 6)AfxMessageBox(Yes);elseAfxMessageBox(No);(其中#define IDYES 6 #define IDNO 7)VC中可调用的函数大致可分三类:1.类自己的函数,只对类自己的数据成员有作用;2.AFX小组在设计 Application Framworks 时设计的全局函数,多冠在Afx前缀,在包含了MFC库/框架的工程中可用;3.Windows API的全局函数。对所有Windows平台下的程序设计都可以调用,如Vb,Vc,Dephi等等。你说的 MessageBox是属于 CWnd 类的成员函数,只能在 CWnd 和CWnd的派生类的对象中调用;AfxMe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论