1、第 10章 在 MFC中创建应用程序的资源 1在 Windows 的可执行文件中,资源是独立于代码的,使用单独的 Resource Compiler进行编译,并嵌入到可执行文件中。在编程过程中,代码是可复用的,资源也是可复用的,通过资源的 “导入 ”和 “导出 ”功能来实现资源的可复用。程序的国际化,也是通过资源来实现的。 210.1获取资源的一个样例查看 Windows ( 98/2000)系统中自带的纸牌游戏中的图片资源: c:Windowscards.dll 或 c:WINNTSystem32310.2 资源的应用 410.2.1 菜单资源的使用菜单是图形用户界面的重要组成部分,菜单可以
2、使用户直观方便地操作程序,为用户提供各种功能。在标准的 Windows 应用程序中,菜单通常有三类:系统菜单、程序主菜单和快捷菜单。经常使用程序主菜单。主菜单如下图所示:5创建一个 “计算 ”菜单利用 MFC创建菜单资源。( 1)创建一个基于单文档的应用程序( 2)选择 Resource View | Menu|IDR_MAINFRAME,通过可视化编辑来创建菜单资源。6Hello World!ID_OPER_REDID_OPER_GREENID_OPER_BLUEID_OPER_SHOW【 例 10-1】 创建一个基于单文档结构的应用程序,在视图中显示一行字符串 “Hello World!”
3、 ,通过建立包含 “显示 ”和 “颜色选择 ”两个菜单项的 “操作 ”菜单来控制字符串,菜单项 “显示 ”用以控制字符串的显示与否,菜单项 “颜色选择 ”中包含一个级连菜单,内容为 “红 ”、 “绿 ”和 “蓝 ”三个菜单项。 7 在 My_ResView.h中的class CMy_ResView : public Cview中的 public处加入如下声明:COLORREF m_nColors3; /用户可选颜色数组DWORD m_nColorIndex; / 当前所选颜色索引CString m_strShow; / 显示的内容BOOL m_bShow; / 是否显示8在 CMy_ResVi
4、ew:CMy_ResView()中初始化成员变量:m_nColors0 = RGB(255,0,0);m_nColors1 = RGB(0,255,0);m_nColors2 = RGB(0,0,255);m_nColorIndex = 0;m_strShow = “Hello World!“;m_bShow = TRUE; 9 在 void CMy_ResView:OnDraw(CDC* pDC)中加入如下代码绘制字符串:if(m_bShow) pDC-SetTextColor(m_nColorsm_nColorIndex); / 设置输出字符串颜色pDC-TextOut(100,100,m_strShow); / 输出字符串10