Delphi:将RCData组织成层次结构

时间:2010-10-11 04:35:03

标签: delphi resources

以下打印屏幕显示嵌入到包中的资源文件列表。是否可以将突出显示的资源(SE_BUG ... SY_VIEW)组织成层次结构方式?我的意思是,我可以在文件夹RCData 下创建文件夹调用元数据,并移动所有突出显示的资源(SE_BUG ... SY_VIEW )进入元数据文件夹?换句话说,我希望以良好的组织方式实现突出显示的资源,例如 MainIcon文件夹的方式。

alt text

3 个答案:

答案 0 :(得分:1)

RCData是一种资源而非文件夹。所以你必须使用其他类型的资源来查看另一个文件夹中的数据

这是delphi中可用的资源类型列表,它基于Windows Resources types

const
  RT_CURSOR       = MakeIntResource(1);
  RT_BITMAP       = MakeIntResource(2);
  RT_ICON         = MakeIntResource(3);
  RT_MENU         = MakeIntResource(4);
  RT_DIALOG       = MakeIntResource(5);
  RT_STRING       = MakeIntResource(6);
  RT_FONTDIR      = MakeIntResource(7);
  RT_FONT         = MakeIntResource(8);
  RT_ACCELERATOR  = MakeIntResource(9);
  RT_RCDATA       = Types.RT_RCDATA; //MakeIntResource(10);
  RT_MESSAGETABLE = MakeIntResource(11);

  DIFFERENCE = 11;

  RT_GROUP_CURSOR = MakeIntResource(DWORD(RT_CURSOR + DIFFERENCE));
  RT_GROUP_ICON   = MakeIntResource(DWORD(RT_ICON + DIFFERENCE));
  RT_VERSION      = MakeIntResource(16);
  RT_DLGINCLUDE   = MakeIntResource(17);
  RT_PLUGPLAY     = MakeIntResource(19);
  RT_VXD          = MakeIntResource(20);
  RT_ANICURSOR    = MakeIntResource(21);
  RT_ANIICON      = MakeIntResource(22);

示例图片中的MAINICON 文件夹是一个RT_GROUP_ICON,它代表一个具有不同尺寸和颜色的图标组,因为它们看起来像一个文件夹

答案 1 :(得分:0)

Resource Explorer演示附带源代码,是的,你可以。 : - )

答案 2 :(得分:0)

资源文件没有结构。您所拥有的是一堆由两个参数标识的资源:名称和资源类型。
您看到的图标资源是“ICON”类型,名为“MAINICON”,只是一个图标文件。图标文件允许多个图像成为单个资源文件的一部分。所以你所看到的不是资源的结构,而是图标文件的结构作为特殊的资源。资源浏览器只能检测这些特殊资源文件,从而以这种特殊方式显示它们。
所以基本上,你有一个主图标,它只包含一个32x32像素x32位颜色的图标。如果您使用的图标文件包含多个图像,您可能会在该列表中看到更多内容。