window菜单编程.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
window菜单编程.ppt

Windows菜单编程 概述 一般菜单的编写方法 快捷菜单的编写方法 菜单 选择Insert-Resource-Menu 选择New这样就创建了一个新的菜单资源.之后VC会自动启动资源编辑器,可以可视化的对菜单资源编辑,这以后的步骤我想大家都能够自己完成,关键一点就是两个菜单项退出和显示的ID栏的填写,你可以为他们取一个好记的名字如IDM_EXIT,IDM_DISP.当然其他名字也可以.双击菜单栏空白处给菜单取名字HelloWin“ 全部完成后点保存vc++就产生一个.rc资源文件.这样就建立好了一个菜单的资源.vc++会也自动产生一个resource.h的头文件.这个文件是将主源文件和资源文件联系起来的桥梁.以后将.rc的资源文件加入到工程中的Source Files目录中,将resource.h的头文件加入到工程中的Header Files目录中. 菜单资源和头文件 菜单资源和头文件 输入完将文件的扩展名改成.rc就产生了一个和可视化资源编辑器一样的菜单资源.同样的方法新建一个resource.h的文本文件输入 //resource.h #define IDM_EXIT 40001 #define IDM_DISP 40002 最后将这两个文件分别加入到工程中的两个目录.得到的是和刚才那种方法一样的效果. 菜单资源 当您为菜单中的项目键入文字时,可以键入一个「」符号,指出后面一个字符在Windows显示菜单时要加底线。这种底线字符是在您使用Alt键选择菜单项时Windows要寻找的比对字符。如果在文字中不包括「」符号,就不显示任何底线,Windows会将菜单项文字的第一个字母用于Alt键查找。 如果在Menu Items Properties对话框中选中Grayed选项,则菜单项是不能启动的,它的文字是灰色的,该项不产生WM_COMMAND消息。如果选中 Inactive选项,则菜单项也是不能启动的,也不产生WM_COMMAND消息,但是它的文字显示正常。 Checked选项在菜单项边上放置一个选中标记。Separator选项在弹出式菜单上产生一个分栏的横线。 主程序需要注意的地方 在注册窗口的时候,注意: wndclass.lpszMenuName = szAppName ; 在窗口类中lpszMenuName指的是这个程序的窗口菜单名字,我给我的菜单取的名字是HelloWin也就是WinMain函数中的定义的字符串数组szAppName,这样就把菜单资源和主程序联系起来了.如果给菜单取的不是文本串名而是ID号如IDR_MENU那么上面这行代码就应该改成:wcex.lpszMenuName = (LPCSTR)IDC_MENU; 只须进行一下强行类型转换就可以了.上面这行代码作用是告诉windows我这个程序要一个叫“HelloWin”的菜单。 菜单项的消息处理 在产生了这个窗口后,当用户点击了某个菜单项windows就会给程序发送WM_COMMAND消息,在消息的WPARAM部分是点击菜单项的ID号是就如IDM_EXIT或IDM_DISP,这个ID号用LOWORD(wParam)提取出来赋值给16位的变量wmpara,后面是对它进行的处理,当用户点击了退出即调用DestroyWindow(hwnd);来销毁窗口从而关闭程序,当点击了显示即显示一个消息框. case WM_COMMAND: //消息循环中多了一个WM_COMMAND消息,它的作用是当用户        //点击菜单中的命令时发送这个消息.        wmpara=LOWORD(wParam); switch(wmpara) { case IDM_EXIT: 菜单项的消息处理 //当用户选择了文件中的退出后windows给程序发送的 WM_COMMAND消息参数中的ID号 DestroyWindow(hwnd); return 0; case IDM_DISP: //当用户选择了编辑中的显示后windows给程序发送的WM_COMMAND消息参数中的ID号 MessageBox(hwnd,你好,欢迎你来到VC之路!,对话框,NULL); return 0; } 动态加载菜单 上节我们生成菜单首先是在资源编辑器中创建和编辑一个菜单,然后用的是下面的方法: wndclass.

文档评论(0)

ziyouzizai + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档