我需要JAVA应用程序才能拥有android等翻译文件。
一些简单的框架可以维护不同的语言,并且可以轻松地进行交换。

ed:这是桌面应用程序...

最佳答案

显然,您无需调用任何构造函数即可在运行时切换语言。在Java Desktop应用程序中,它很简单:

Locale brazilian = new Locale("pt", "BR");
Locale.setDefault(brazilian);


当然,如果要通过JComboBox进行切换,则可能会有所不同。我会做的是,实际上将创建一个模型(Swing提倡MVC设计模式)来保存数据(不同的语言环境),并在正确的ActionListener中设置默认语言环境。不过这并不容易。

当然,我宁愿使用本地名称作为语言环境。如果已构建它们,则可以通过简单地调用getDisplayName()并将其自身作为参数传递来轻松获得本地名称Locale名称:

String brazilianNativeName = brazilian.getDisplayName(brazilian);


对于某些语言环境,结果可能无法令人满意(我相信不幸的是巴西葡萄牙语是其中的一种),但是您对此无能为力(除非您使用自己的字符串)。

老实说,对于两种语言,我可能会改用一些链接。您可以使用简单的JLabel来做到这一点,只需设置正确的字体属性和颜色并分配通用的ActionListener即可。然后,您可以查询实际单击了哪一个,并适当地创建和设置Locale。对于家庭作业来说应该足够了。

10-06 16:01