文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>resource files 笔记

resource files 笔记

时间:2010-06-11  来源:freebendy

*.rss文件 应用程序UI组件使用的资源源文件 *_reg.rss文件 注册使用的资源源文件 *.hrh文件 用于定义枚举的资源头文件 *.rls文件 用于管理应用程序UI文本字符串的本地化文件
可以使用以下的C++预编译指令:
  • #define

  • #include

  • #ifdef

  • #ifndef

  • #if

  • #else

  • #endif

    一般,resource(*.rss)文件会include以下头文件:

  • appinfo.rh

  • avkon.rh

  • avkon.rsg

  • eikon.rh


    语法:

    RESOURCE <STRUCT_NAME> | <resource_name> | { <resource-initialiser-list> }

  • <STRUCT_NAME> 资源头文件声明的结构体名

    <STRUCT_NAME> 必须大写

  • resource_name 资源名称

    resource_name 必须小写(编译的时候C++自动将其转换成大写).

  • resource-initialiser-list 初始化结构体中没有默认值的成员


    如果定义了NAME变量(值为应用程序唯一),则它的定义语句必须出现在resource文件的开始,而且必须紧跟着以下的定义语句:

  • RESOURCE RSS_SIGNATURE

  • RESOURCE TBUF

  • RESOURCE TBUF RESOURCE EIK_APP_INFO

    RSS_SIGNATURE 用于定义资源文件的版本号,RESOURCE RSS_SIGNATURE { signature = value },signature是LONG类型,默认值为0,如果使用默认值就定义一个空的结构体。

    TBUF 定义一个被doucument类的StoreL和RestoreL方法使用的文件名,如果不需要调用这两个函数,则可以定义空结构。

    RESOURCE TBUF { buf="NAME"; } // 一般buf值和NAME一致

    TBUF在abdef.h中声明(被包含在uikon.h中)

    EIK_APP_INFO 定义一个在应用程序UI使用的对象,不是所有成员都需要定义,参考语法:

    RESOURCE EIK_APP_INFO 

    menubar = value2; 

    cba = value5; 

    status_pane = value6; 

    }

  • menubar 定义menubar资源

  • cba 定义softkeys资源

  • status_pane 定义status pane资源

    成员的值应该是在recource文件或者recource文件包含的.rsg文件中定义,未被顶义的成员不要使用。

    (包含在appinfo.rh)

    RESOURCE LOCALISABLE_APP_INFO r_name36 

     { 

     short_caption = ""; //标题缩写,显示长度不够时使用

     CAPTION_AND_ICON_INFO 

     { 

     caption = "";  // 完整标题

     number_of_icons =0; //菜单使用的icon数目

     icon_file = ""; //icon文件(包含路径但是不含盘符)

     }; 

     view_list[]; // VIEW_DATA 

     group_name(KAppMaxGroupName) = ""; 

     }


    *_reg.rss文件包含以下内容

    UID2 KUidAppRegistrationResourceFile (都是相同的值)

    UID3 <uid3 value for application>

    RESOURCE  APP_REGISTRATION_INFO
            {
            app_file = ""; //应用程式可执行文件名字,不包含扩展名
            attributes = 0;
            localisable_resource_file = ""; // 程序本地化资源的文件路径和名称(不包含盘符)
            localisable_resource_id = r_name36; //在.rss文件中定义的LOCALISABLE_APP_INFO结构
            hidden = KAppNotHidden;
            embeddability = KAppNotEmbeddable;//程序是否可嵌入
            newfile = KAppDoesNotSupportNewFile;//说明程序是否给予文档以及是否支持新建文件(KAppDoesNotSupportNewFile默认值)
         launch = KAppLaunchInForeground;
            group_name(KAppMaxGroupName) = "";
            default_screen_number = 0;
            datatype_list[]; // SUPPORTED DATATYPES
            file_ownership_list[]; // FILE_OWNERSHIP_INFO
            service_list[]; // SERVICE_INFO
            opaque_data = 0;        // use for opaque data to send to non-native application launchers i.e. MIDlet id
            }
    *.hrh文件主要用于定义枚举,
  • 自定义的command IDs

  • 允许在C++代码引用dialog控制dialogs的control IDs

  • Application view IDs. Note that these could also be enumerated in the header files for the views.

  • IDs for other resource structures, such as for TABS in the status pane.

  • #include <eikon.rh>
    #include <avkon.rh>
    这两个文件包含了.rss文件使用的很多struct的定义
    #include <avkon.rsg> 
    包含一些编译过的resources的IDs。
    #include <appinfo.rh>
    包含_reg.rss文件需要的和注册相关的struct。


    详细资料:
    C++ Developer's Library 1.4 -> Application Framework -> Managing resouce files
    S60 5th Edition C++ Developer's Library -> Symbian Developer's Library v9.4 ->Symbian OS v9.4 -> Symbian OS Tools And Utilities -> Application resource tools reference
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载