netbeans中的本地化系统文件系统

时间:2014-09-05 15:58:36

标签: java netbeans localization internationalization netbeans-platform

我正在尝试为Netbeans RCP进行本地化,当我尝试从Bundle.properties中创建layer.xml读取属性时,我陷入困境。它读取并更改netbeans项目树中的名称,但我想要实现的是在应用程序中更改名称。

<folder name="Folder 1">
    <attr intvalue="2" name="position"/>
    <folder name="subfolder 1" >
         <attr intvalue="0" name="position"/>
    </folder>
    <folder name="subfolder 2" >
         <attr intvalue="0" name="position"/>
    </folder>
</folder>

<folder name="Folder 2">
    <attr intvalue="2" name="position"/>
    <folder name="subfolder 1" >
         <attr intvalue="0" name="position"/>
    </folder>
    <folder name="subfolder 2" >
         <attr intvalue="0" name="position"/>
    </folder>
</folder>

很多课程都使用文件夹的路径,这是硬编码的.e

@ActionReference(path = "folder 1/sufolder 2", position = 1)

当我启动具有不同于默认语言环境的应用程序(例如西班牙语)时,它会加载包含西班牙语翻译的Bundle_es_ES.properties文件。我还想翻译文件夹的名称,因为它们显示在应用程序中。我发现的唯一线索是添加从Bundle.properites文件中读取参数的属性“displayName”。它没有按照我想要的方式工作。

非常感谢你的帮助

1 个答案:

答案 0 :(得分:0)

在 layer.xml 中,您需要将 displayName 属性添加到可本地化文件夹中,如下所示:

   <folder name="subfolder1" >
         <attr intvalue="0" name="position"/>
         <attr name="displayName" bundlevalue="org.path.to.Bundle#Actions/subfolder1">
   </folder>

然后 Netbeans 将使用本地化 Bundle_xx_XX.properties 中的条目“Actions/subfolder1=xxx”。

Netbeans IDE 可以为您进行这些更改:从 IDE 编辑 layer.xml,选择 subfolder1,右键单击菜单“Localize Name”。