如何从 fxml 文件中的 xml 文件中读取值?
How can I read values from an xml file in a fxml file?
我是 JavaFX 的新手,作为在 Android Studio 中完成的类似方式,我想要一个名为 strings.xml 的文件我可以在其中存储一些可以从 fxml 文件 中读取的资源。例如,如果我在 strings.xml 中有以下代码:
<resources>
<string name="app_name">My App Name</string>
</resources>
我想在 fxml 文件中做这样的事情:
text="@string/app_name"
如何实现?
是的,可以使用类似于 Android 资源的方式在 FXML 文件中使用国际化字符串。有一些差异:
资源文件是 .properties
个文件而不是 .xml
个文件。变量也以不同的方式定义:
variable.name_1=Hello
variable.name_2=World
(注意缺少 <resource>
标签,它只是普通的 [var_name]=[value]
)。
要在 FXML 文件中引用字符串,请使用 %
而不是 @string/
。例如:
<Button
fx:id="button1"
text="%variable.name_1"
/>
就是这样。我建议搜索 ResourceBundle
,因为这说明了 属性 文件应该如何命名以选择正确的语言。此外,该包还可用于将国际化变量添加到您的代码中。
我是 JavaFX 的新手,作为在 Android Studio 中完成的类似方式,我想要一个名为 strings.xml 的文件我可以在其中存储一些可以从 fxml 文件 中读取的资源。例如,如果我在 strings.xml 中有以下代码:
<resources>
<string name="app_name">My App Name</string>
</resources>
我想在 fxml 文件中做这样的事情:
text="@string/app_name"
如何实现?
是的,可以使用类似于 Android 资源的方式在 FXML 文件中使用国际化字符串。有一些差异:
资源文件是
.properties
个文件而不是.xml
个文件。变量也以不同的方式定义:variable.name_1=Hello variable.name_2=World
(注意缺少
<resource>
标签,它只是普通的[var_name]=[value]
)。要在 FXML 文件中引用字符串,请使用
%
而不是@string/
。例如:<Button fx:id="button1" text="%variable.name_1" />
就是这样。我建议搜索 ResourceBundle
,因为这说明了 属性 文件应该如何命名以选择正确的语言。此外,该包还可用于将国际化变量添加到您的代码中。