VC学习笔记-1教学教案.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1 API和SDK API SDK 消息与消息队列 消息队列 WinMain函数 窗口的创建 1.设计一个窗口类WndClass() 窗口的特征是由wndclass函数来定义的 使用时,先定义一个结构体变量:WNDCLASS wndclass wndclass.style=,,,,,, wndclass.lpfnWndProc=,,,,, ,,,,,,, style里面的常用样式,使用时,写成style=CS_HEADRAW,等等,在书上P7. 2.注册窗口类RegisterClass() 3.创建窗口CreateWindow() 在创建窗口之前,必须要先为窗口注册(registerclass(窗口类对象的地址)) dwStyle 可以指定为WS_OVERLAPPEDWINDOW这个类型,这是一个包含多个窗口类型的组合。 4.显示更新窗口Show/UpdateWindow 编写的消息循环代码: 其中: 5.Windows消息处理机制 6.peekmessag() 7.发送消息 8.MassageBox() MessageBox显示一个模态对话框,其中包含一个系统图标、 一组按钮和一个简短的特定于应用程序消息,如状态或错误的信息。消息框中返回一个整数值,该值指示用户单击了哪个按钮。 函数原型:int?WINAPI?MessageBox(HWND?hWnd,LPCTSTR?lpText,LPCTSTR?lpCaption,UINT?uType); hWnd: 此参数代表消息框拥有的窗口。如果为NULL,则 消息框没有拥有窗口。 lpText: 消息框的内容。 lpCaption: 消息框的标题。 uType: 指定一个决定对话框的内容和行为的位标志集。此参数可以为下列标志组中标志的组合。指定下列标志中的一个来显示消息框中的按钮以及图标 按钮参数: 含义 MB_OK 默认值。有一个确认按钮在里面。 MB_YESNO 有是和否在里面。 MB_ABORTRETRYIGNORE 有Abort(放弃),Retry(重试)和Ignore(跳过) MB_YESNOCANCEL 消息框含有三个按钮:Yes,No和Cancel MB_RETRYCANCEL 有Retry(重试)和Cancel(取消) MB_OKCANCEL 消息框含有两个按钮:OK和Cancel MB_ICONEXCLAMATION 一个惊叹号出现在 消息框 MB_ICONWARNING 一个惊叹号出现在 消息框 MB_ICONINFORMATION 一个圆圈中小写字母i组成的图标出现在 消息框 MB_ICONASTERISK 一个圆圈中小写字母i组成的图标出现在 消息框 MB_ICONQUESTION 一个问题标记图标出现在 消息框 MB_ICONSTOP 一个停止消息图标出现在 消息框 MB_ICONERROR 一个停止消息图标出现在 消息框 MB_ICONHAND 一个停止消息图标出现在 消息框 返回值: ID 选择了…… IDOK(1) OK IDCANCEL(2) CANCEL IDABORT(3) ABORT IDRETRY(4) RETRY IDIGNORE(5) IGNORE IDYES(6) YES IDNO(7) NO 9.窗口过程函数 过程:首先操作系统检测到应用程序的窗口消息,将消息传送到消息队列中,应用程序不断循环调用getmessage(),来取出消息队列中的消息,并且translate(产生新消息)(例如:将消息WM_KEYDOWN和KEY_KEYUP转换成一条WM_CHAR,这里面有附加参数wPARAM,包含了字符的ASCII码)和dispatch,传送给操作系统,然后操作系统调用过程函数对消息进行处理。 过程函数:有四个参数 注意:如果过程函数最后没有DefIndowProc()这一步,那么进程会一直存在,要关掉进程。 10.变量LRESULT和CALLBACK 11.BeginPaint() 函数原型:HDC BeginPaint( HWND hwnd, // [输入]被重绘的 窗口句柄 LPPAINTSTRUCT lpPaint // :[输出]指向一个用来接收绘画信息的 PAINTSTRUCT结构 ); 如果函数成功,返回值是指定窗口的“显示设备描述表”句柄。 如果函数失败,返回值是NULL,表明没有得到显示设备的内容。 备注: BeginPaint函数自动设置显示设备内容的剪切区域,而排除任何更新区域外的区域。该更新区域可以通过InvalidateRect或InvalidateRgn函数设置,也可以是系统在改变大小、移动、创建、滚动后设置的,

文档评论(0)

youngyu0318 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档