我的默认语言环境是法语,但是我的应用程序中的组件仍然是英语。
System.out.println(UIManager.getLookAndFeelDefaults().getDefaultLocale()); // => fr_FR
System.out.println(System.getProperty("user.language")); // => fr
例如,我的JFileChooser
:
有什么问题?有没有办法强制组件语言值?
我正在使用Java 11,Eclipse,Windows 7。
JFileChooser用作内容窗格sun.swing.FilePane
。如果查看installDefaults()
的this class方法,您会发现以下注释:
// TODO: On windows, get the following localized strings from the OS
这意味着它尚未实现(而且我认为永远不会实现。)。>
因此,您唯一可以做的(不幸的是,是使用UIManager
键手动更改它们:
FileChooser.viewMenuLabelText FileChooser.refreshActionLabelText FileChooser.newFolderActionLabelText FileChooser.listViewActionLabelText FileChooser.detailsViewActionLabelText FileChooser.fileSizeKiloBytes FileChooser.fileSizeMegaBytes FileChooser.fileSizeGigaBytes FileChooser.renameErrorTitleText FileChooser.renameErrorText FileChooser.renameErrorFileExistsText FileChooser.lookInLabelText FileChooser.fileNameLabelText FileChooser.filesOfTypeLabelText FileChooser.upFolderToolTipText FileChooser.newFolderToolTipText FileChooser.viewMenuButtonToolTipText FileChooser.saveButtonText FileChooser.openButtonText FileChooser.cancelButtonText FileChooser.updateButtonText FileChooser.helpButtonText FileChooser.directoryOpenButtonText FileChooser.saveButtonToolTipText FileChooser.openButtonToolTipText FileChooser.cancelButtonToolTipText FileChooser.updateButtonToolTipText FileChooser.helpButtonToolTipText FileChooser.directoryOpenButtonToolTipText FileChooser.saveDialogTitleText FileChooser.openDialogTitleText
例如:
//google translate :) UIManager.put("FileChooser.newFolderActionLabelText", "créer un nouveau dossier");
还有方法JFileChoose#setApproveButtonText,但我认为这不能满足您的需求。