zoukankan      html  css  js  c++  java
  • MFC 的资源文件 就是那个后缀名是 .rc的那个

    参考:

    http://blog.csdn.net/zgrjkflmkyc/article/details/16897881

    http://www.oschina.net/question/565065_72669

    ×××××××××××××××××××××××××××××××××××××××××××××××

    统一管理:

    在Win32编程的时候,为了方便项目中的资源统一管理,IDE提供了一个统一的格式资源文件,这是就是后缀为.rc的文件。

    在程序编译的时候他会被编译器(具体来说是资源编译器)生成一个后缀名为res的二进制文件。

    rc文件的语法结构:

    1 注释:注释格式和C语言相同,单行注释使用//符号。多行注释使用/××/符号。

    2 预处理命令:预处理指令包括一些头文件的引用(使用#include,也和C语言相同)

    3 编译指令:预定义(#define,常量和宏,  不支持带参数的宏)和条件编译(#if,#ifdef,#undef,#ifndef,#else,#elif,#endif等)

    4 资源定义说明:资源定义的声明包括“资源”(Resources),“控件”(Controle),“声明”(Statement)3类

    ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

    1.资源(Resources):“资源”具有资源 ID,在程序中可以使用 FindResource ,LoadResource,LoadMenu 等资源相关 API 来操作。常见的定义如下:

    (1)从文件导入的资源类型:(BITMAP,ICON,HTML,FONT,CURSOR 等)

    Example:

    //格式:nameID BITMAP filename
    //例子:
    IDI_ICON_MAIN       ICON       "res\icon.ico"  //ICON RESOURCE  
    

    (2)) 对话框资源类型:(DIALOG,DIALOGEX 等)(对话框可以包括若干子控件,如菜单,按钮等,定义语法如下)

    Example:

    //模板
    //nameID DIALOGEX x, y, width, height [ , helpID]] [[ optional-statements]]  {control-statements }  
    //资源ID 资源类型 x坐标,y坐标,宽,高
    //例子:
    IDD_DIALOG_ABOUT DIALOGEX 0, 0, 290, 59        //DIALOGEX RESOURCE
    
    STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU    
    // 样式 ??|??||弹出|有标题|有系统菜单 CAPTION "Dialog" // CAPTION STATEMENT   标题 FONT 8, "MS Shell Dlg", 400, 0, 0x1 // FONT STATEMENT 字体设定 BEGIN LTEXT "Windows Resource Demo",3001,26,14,119,8,SS_NOPREFIX // CONTROL LTEXT "Copyright (C) 2008",3002,26,30,119,8 // CONTROL DEFPUSHBUTTON "OK",IDOK,234,14,32,14,WS_GROUP // CONTROL DEFPUSHBUTTON "Quit",IDCANCEL,234,31,32,14,WS_GROUP //CONTROL END

    (3) 菜单资源类型:

    Example:

    //定义
    //Menu
    //menuID MENU [[optional-statements]] { item-definitions ... } 
    //POPUP:  
    //POPUP text, [[optionlist]] { item-definitions ... }  
    
    //例子:
    //MENU: 
    IDR_MENU_MAIN MENU
    BEGIN 
     POPUP "File"        // POPUP RESOURCE  
        BEGIN  
            MENUITEM "&Open",        ID_FILE_COPY    // MENUITEM  STATEMENT  
            MENUITEM "&Save",        ID_FILE_SAVE40002// MENUITEM  STATEMENT  
            MENUITEM SEPARATOR            // MENUITEM  STATEMENT  
            MENUITEM "E&xit",         ID_FILE_EXIT  // MENUITEM  STATEMENT  
        END  
        POPUP "Eidt"        // POPUP RESOURCE  
        BEGIN  
            MENUITEM "&Copy",        ID_EIDT_COPY// MENUITEM  STATEMENT  
            MENUITEM "&Paste",     ID_EIDT_PASTE// MENUITEM  STATEMENT  
        END  
        POPUP "Help"        // POPUP RESOURCE  
        BEGIN  
            MENUITEM "&About",    ID_HELP_ABOUT// MENUITEM  STATEMENT  
        END  
    END  
    
    
    
    
    //POPUP:  
    IDR_MENU_POPUP MENU   
    BEGIN  
        POPUP "POPUP"  
        BEGIN  
            MENUITEM "&Copy",        ID_POPUP_COPY  
            MENUITEM "&Paste",        ID_POPUP_PASTE  
            MENUITEM "Cu&t",        ID_POPUP_CUT  
            POPUP "&Info"  
            BEGIN  
                MENUITEM "Co&unt",         ID_INFO_A  
                MENUITEM "&Size",            ID_INFO_B  
            END  
        END  
    END  
    

      

    (4)字符串表类型:

    Example:

    //定义  
    //STRINGTABLE [[optional-statements]] {stringID string ...}  
      
    //例子  
    STRINGTABLE  
    BEGIN  
    IDS_1 L"5x00BC-Inch Floppy Disk"  
    IDS_1a "5xBC-Inch Floppy Disk"  
    IDS_2 L"Don't confuse x2229 (intersection) with x222A (union)"  
    IDS_3 "Copyright xA92001"  
    IDS_3a L"Copyright x00a92001"  
    END  
    

      

    (5)自定义类型:

    Example:

    nameID typeID filename  
    nameID typeID { raw-data }  
    

      

  • 相关阅读:
    全国计算机等级考试二级教程-C语言程序设计_第10章_字符串
    网易云课堂_程序设计入门-C语言_第六章:数组_2鞍点
    arcgis api for silverlight开发系列之二:缓存图层与动态图层及图层总结 .
    VS2010程序打包操作(超详细的)
    地图三要素
    创业建议
    写代码时,必须注意“异常处理”
    WPF——RenderTransform特效
    MVVM特点、源(数据)与目标(如:控件等)的映射
    使用触发器定义 WPF 控件的行为
  • 原文地址:https://www.cnblogs.com/wenluderen/p/4331846.html
Copyright © 2011-2022 走看看