【问题标题】:Localization system filesystem in netbeansnetbeans 中的本地化系统文件系统
【发布时间】:2014-09-05 15:58:36
【问题描述】:

我正在尝试为 Netbeans RCP 进行本地化,但当我尝试让 layer.xml 从 Bundle.properties 读取属性时,我被卡住了。它读取它并在 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>

很多类使用文件夹路径,这是硬编码的,即

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

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

非常感谢您的帮助

【问题讨论】:

  • 达米安我也有同样的问题。我知道这篇文章很老了,但你得到答案了吗?

标签: java netbeans localization internationalization netbeans-platform


【解决方案1】:

在您的 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”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-22
    • 1970-01-01
    相关资源
    最近更新 更多