MFC初步教程(三):菜单
菜单是MFC编程中非常重要的一种资源,在MFC中添加菜单有两种方式,一种是以资源的形式静态添加,另一种是动态添加,本文简洁说明第一种形式 ,其步骤如下(从SDK的角度看各种类之间的联系,更容易理解MFC框架):
1 创建win32空项目;
2 添加一个前述初步教程中所示的源代码文件
3 选择菜单insert->resource->menu,添加一个菜单File,并添加一个子菜单New,编辑子菜单New的ID为:IDM_FILENEW
4 选择Project --> Add To Project --> Files 将Script1.rc 和resource.h加入项目.
代码如下:
#include <afxwin.h>
#include "resource.h"class MFC_Tutorial_Window :public CFrameWnd
{CMenu menu1; // menu1作为本窗口类的一个数据成员
public:MFC_Tutorial_Window(){Create(NULL,"MFC Tutorial Part 1 CoderSource Window");menu1.LoadMenu(IDR_MENU1); // 加载菜单资源,初始化菜单SetMenu(&menu1); // 当前窗口以menu1为菜单,如果SetMenu函数参数为空,则表示无菜单(此函数用于设置窗口菜单)}void OnFileNew();DECLARE_MESSAGE_MAP()
};BEGIN_MESSAGE_MAP( MFC_Tutorial_Window, CFrameWnd)ON_COMMAND(IDM_FILE_NEW,OnFileNew) // ON_COMMAND表示菜单消息、工具栏消息等命令消息
END_MESSAGE_MAP()void MFC_Tutorial_Window::OnFileNew()
{MessageBox("Clicked File->New");
}
class MyApp :public CWinApp
{MFC_Tutorial_Window *wnd;
public:BOOL InitInstance(){wnd = new MFC_Tutorial_Window();m_pMainWnd = wnd;m_pMainWnd->ShowWindow(1);return 1;}
};MyApp theApp;
转载于:https://www.cnblogs.com/YukiJohnson/archive/2013/01/05/2846856.html
MFC初步教程(三):菜单相关推荐
- MFC初步教程(二)
绘制简单的图形几乎是所有的VC教程中的必须内容,这里面涉及到几个概念,设备(device context),画刷(Pen)等.CDC是所有设备的父类,其子类包括CClientDC(仅在客户区绘制), ...
- MFC初步教程(一)
学习过很多语言以及环境,对于Java.C++.Qt等都很容易理解,并且能很快上手做项目,唯独对MFC一直浑浑噩噩,不太清楚,参与项目总是独立负责一块,与业务逻辑更相关,用std库的机会多,与GUI.D ...
- mfc基础教程(学习笔记)
目录 mfc基础教程 第一章:CDC的使用 第二章:文本编程 第三章:菜单 第四章:对话框 第五章:对话框(二) 第六章:样式 第七章:创建兼容DC 第八章:图形的保存与重绘 第九章:文件 第十章:文 ...
- Visual C++/MFC入门教程
Visual C++/MFC入门教程 VC开发指南 1.1 如何学好VC 这个问题很多朋友都问过我,当然流汗是必须的,但同时如果按照某种思路进行有计划的学习就会起到更好的效果.万事开头难,为了帮助朋友 ...
- Visual C++ MFC 简明教程
原著:Marshall Brain 编译:张圣华 第一部分:MFC导论 Visual C++ 不仅仅是一个编译器.它是一个全面的应用程序开发环境,使用它你充分利用具有面向对象特性的 C++ 来开发出专 ...
- x%3e=y%3e=z的c语言表达式,我的C语学习笔记-C语言教程(三).doc
我的C语学习笔记- C语言教程(三) C语言教程---第一章: C语言概论 C语言教程---第二章: 数据类型.运算符.表达式 C语言教程---第三章: C语言程序设计初步 C语言教程---第四章: ...
- DirectSound初步教程
转自编程中国 DirectSound初步教程 2010-04-24 20:00 Directsound中常用的几个对象 对象 数量 作用 主要接口 设备对象 每个应用程序只有一个设备对象 用来管理设备 ...
- Win11 22H2怎么退回之前版本?Win11回滚Win10系统教程(三种方法)
最近,新的Windows11 22H2正式版已经推送了,有不少更新到新系统的朋友出现了问题,想要退回之前的系统版本,本文就针对Win11 22H2怎么退回之前版本的问题,带来了三种Win11回滚Win ...
- Scintilla MFC使用教程
Scintilla MFC使用教程 修复了按 Ctrl+S 会出现 "IDC"字符的BUG 增加了自定义消息 VK_ADD_HISTR: #define SET_EDITHIGHL ...
最新文章
- linux 多路径重启,(linux多路径连接iScsi存储重启自动连接.docx
- window.showModalDialog用法介绍
- android 相册 uri空,android拍照获得图片URI为空的处理方法
- python程序代码是什么_python编程:下列代码表示什么含义
- jquery的一个代码
- 大数据基础知识问答----hadoop篇
- 不会真的有人拿了上万甚至几十万在网络上赌博吧?
- 的房费重构——上,下位机的复议
- 机器视觉:平行光源在双远心系统中的应用
- 主板找不到SSD解决一例
- 上位机和下位机有什么区别和关系?常用上位机软件开发工具介绍
- 使用pem文件进行ssh登录
- 研发项目成本计算方法以及工作量评估
- 已经有些跑偏的“学术会议文化”!
- Android/IOS/Web跳转第三方QQ指定QQ号的聊天框,实现陌生人聊天
- 微信朋友圈能评论表情包了,来斗图啊!
- netstat和netstat -ano
- java中级工程师所需的技能_Java 工程师要具备哪些技能或技术?
- 将字符串的一部分拷贝到另一个字符串
- Emmy Noether传记资料(2010-01-27 23:37:43)
热门文章
- JVM运行时内存概念-堆栈及新生代、老年代、持久代
- shell分割参数为数组并循环执行jar,异常时退出循环
- lt;a href=quot;javascript:history.back();quot;gt;返回上一页lt;/agt;
- metasploit下载教程linux,在Debian 10/9系统上安装Metasploit Framework的方法
- seo自动工具_【SEO工具】搭建一个网站需要用到哪些SEO工具?
- SpringBoot使用@Transactional
- JAVA:二进制和十进制互转
- Ubuntu 下解压tar.xz方法
- SQL2000系统表、存储过程、函数的功能介绍及应用
- Nginx负载均衡配置+keepalived高可用