[法学]第6章 资源.ppt

  1. 1、本文档共76页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[法学]第6章 资源

在上例的基础上增加新功能。若在用户区内按下鼠标左键,则动态创建一个包括“删除计算总和”、“添加计算平均值”和“修改计算均方差”三个菜单项的弹出式菜单,由此菜单控制“计算”菜单中菜单项的删除、添加与修改。(要求新的弹出式菜单开始时不可用,按下右键后变为可用。) 单击“修改计算均方差”菜单项后,“计算”菜单下的“计算均方差”项改为“线性拟合”,单击“添加计算平均值”菜单项后,“计算”菜单中添加上了“计算平均值”菜单项。 菜单项操作实例 long WINAPI WndProc(HWND hWnd,UINT iMessage,UINT wParam,LONG lParam) { static BOOL create=TRUE; switch(iMessage) { case WM_LBUTTONDOWN: //按下鼠标左键后响应的消息 if(create==TRUE) { hChildMenu=CreateMenu(); hMenu=GetMenu(hWndMain); AppendMenu(hChildMenu,MF_GRAYED,IDM_DELETE,删除计算总和); AppendMenu(hChildMenu,MF_GRAYED,IDM_ADD,添加计算平均值); AppendMenu(hChildMenu,MF_GRAYED,IDM_MODIFY,修改计算均方差); InsertMenu(hMenu,3,MF_POPUP|MF_BYPOSITION,(UINT)hChildMenu,修改菜单); DrawMenuBar(hWndMain); create=FALSE; } break; case WM_RBUTTONDOWN: if(create==FALSE) { EnableMenuItem(hMenu,IDM_DELETE,MF_ENABLED|MF_BYCOMMAND); EnableMenuItem(hMenu,IDM_ADD,MF_ENABLED|MF_BYCOMMAND); EnableMenuItem(hMenu,IDM_MODIFY,MF_ENABLED|MF_BYCOMMAND); } break; case WM_COMMAND: if(wParam==IDM_DELETE) DeleteMenu(hMenu,IDM_SUM,MF_BYCOMMAND); else if(wParam==IDM_ADD) InsertMenu(hMenu,IDM_DEVIA,MF_BYCOMMAND|MF_ENABLED,IDM_AVERAGE,计算平均值); else if(wParam==IDM_MODIFY) ModifyMenu(hMenu,IDM_STDDEVIA,MF_BYCOMMAND,IDM_NIHE,线性拟合); else ; break; case WM_DESTROY: PostQuitMessage(0); return 0; default: return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } return 0; } 1.位图概念 为提高显示刷新速度,位图操作须在内存中进行。用于位图操作的设备环境为内存设备环境。用函数CreateCompatibleDC向系统申请获取内存设备环境。 hdcmem = CreateCompatibleDC(hdc); 内存设备环境也有设备描述表。获取内存设备环境后,还要调用SelectObject将位图文件选入内存设备环境,才可在内存设备环境中操作位图,操作位图结束后,应用程序须调用DeleteDC释放内存设备环境。 DeleteDC(hdcmem); //hdcmem:内存设备环境句柄 6.2 位图资源及其应用 位图操作过程 1.定义 2.加载或创建 3.选入内存设备环境 4.输出 (1) 定义一个位图句柄:HBITMAP hBm; (2a) LoadBitMap加载位图并获得位图的句柄 hBm=LoadBitMap(hinstance,lpszname); lpszname为位图名称 (2b)CreateCompatibleBitmap创建位图 hBm=CreateCompatibleBitmap (hdc,nWidth,nHeight); (3)SelectObject将位图选入内存设备环境中 SelectO

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档