使用资源字典

资源字典是指向资源的资源 ID 的集合。您可以为任意节点添加资源字典。默认情况下,以下节点包含资源字典:

节点可以访问其自己的资源字典以及子孙节点中定义的资源字典中的所有资源 ID。您可以将资源 ID 作为资源属性的值进行分配,并且它们显示在 Kanzi Studio 中,语法 ResourceID → Resource。

您可以将资源本地化为任何节点。向节点范围添加资源,即可向该节点的资源字典添加资源 ID 条目。资源 ID 是从使用位置抽象资源的标识符。

向节点添加资源字典

要向某个节点添加资源字典,在 工程 (Project)按下 Alt 并右键点击某个节点并选择 资源字典 (Resource Dictionary)

查看资源字典的内容

要查看资源字典的内容:

  1. 工程 (Project) 中,选择您希望在字典 (Dictionaries) 中显示其资源字典内容的节点。字典 (Dictionaries) 中列出的资源带有颜色编码。

查看并激活地区和主题

要查看并激活地区和主题,在 字典 (Dictionaries) 中点击 地区和主题 (Locales and Themes) 以启用本地化表和主题组的查看,并且对于各本地化表和主题组,选择您希望在 预览 (Preview) 中显示的地区和主题。

向资源字典添加资源

向资源字典添加资源:

  1. 向节点添加资源字典。请参阅向节点添加资源字典
  2. 字典 (Dictionaries)中点击+ 添加资源 (+ Add Resource) 并选择:

将 kzb URL 用于资源字典中的资源

您可以使用 kzb URL 指向另一个 Kanzi Studio 工程中的资源。

要将 kzb URL 用于资源字典中的资源:

  1. 字典 (Dictionaries) 中,双击您要使用 kzb URL 的资源的单元格,并在下拉菜单中选择 < URL >
  2. 在单元格中,输入要使用的资源的 kzb URL。
    例如,要使用来自另一个 Kanzi Studio 工程的字体,请输入指向该字体的 kzb URL。

在 API 中使用资源字典

要创建资源字典:

//创建资源字典。
ResourceDictionarySharedPtr dictionary = ResourceDictionary::create(domain, "Dictionary");

要向资源字典添加内容:

// 添加资源到资源字典。
dictionary->add(ResourceID("red icon"), texture);
dictionary->add(ResourceID("blue icon"), "kzb://my_project/Textures/Blue Icon");

要从资源字典获得资源:

// 从资源字典获得资源。
ResourceSharedPtr redIcon = dictionary->acquire(ResourceID("red icon"));
ResourceSharedPtr blueIcon = dictionary->acquire(ResourceID("blue icon"));

要更改节点的资源字典:

// 更改节点的资源字典。
node->setResourceDictionary(dictionary);

要扩展节点的现有资源字典:

// 用嵌套资源字典扩展节点的现有资源字典。
node->addResourceDictionary(dictionary);

有关详细信息,请参阅 API reference中的 ResourceDictionary 类。

另请参阅

资源管理

本地化

为应用程序制定主题