JFileChooserにLocaleを設定する
Total: 10483
, Today: 2
, Yesterday: 2
Posted by aterai at
Last-modified:
概要
JFileChooser
にLocale
を設定して、タイトルやボタンの文字列を変更します。
Screenshot
Advertisement
サンプルコード
// JFileChooser.setDefaultLocale(Locale.ENGLISH);
fileChooser.setLocale((Locale) combo.getSelectedItem());
SwingUtilities.updateComponentTreeUI(fileChooser);
View in GitHub: Java, Kotlin解説
上記のサンプルでは、JFileChooser
のタイトル、ボタンのラベルなどを指定したLocale
に対応した文字列に変更するテストができます。
ファイルのタイプ(T): JComboBox
の「すべてのファイル」などは更新されないjava -Duser.language=fr -jar example.jar
で起動するとLocale
を変更してもTous les fichiers
から変化しない
- 詳細表示
JTable
のヘッダは更新されないJDK 8
ではjava -Duser.language=fr -jar example.jar
で起動しても「名前、サイズ、項目の種類、更新日時」などOS
が使用しているロケール?から文字列が取得される?JDK 13
ではjava -Duser.language=fr -jar example.jar
で起動するとLocale
を変更しても「Nom, Taille, ...
」から変化しない
参考リンク
- Bug ID: 6606475 JComponent.setDefaultLocale(Locale.ENGLISH) useless if def locale is non-english
JDK 1.5.0_13
では、JVM
のデフォルトがEnglish
以外の場合、Component#setLocale(Locale.ENGLISH)
や、JComponent.setDefaultLocale(Locale.ENGLISH)
としても反映されないJDK 1.6.0
で修正済みJDK 1.8.0
では再発している?