Tôi đang làm việc trên một ứng dụng java với JFileChooser và người dùng có thể chuyển đổi ngôn ngữ.Bản địa hóa chuỗi "Tất cả các tệp" của JFileChooser
Locale.setDefault(Locale.ENGLISH);
JFileChooser chooser = new JFileChooser();
chooser.showOpenDialog(null);
Locale.setDefault(Locale.CHINA);
JFileChooser.setDefaultLocale(Locale.CHINA);
JFileChooser chinese_chooser = new JFileChooser();
chinese_chooser.showOpenDialog(null);
Trình chọn tệp thứ hai xuất hiện bằng tiếng Trung, ngoại trừ chuỗi "Tất cả tệp" trong hộp thả xuống. Nếu tôi nhận xét phần đầu tiên của mã, trình chọn tệp xuất hiện chính xác với tất cả các chuỗi được dịch.
Đây có phải là lỗi trong java hoặc tôi có cần đặt ngôn ngữ ở một nơi khác không?
Làm cách nào để trình chọn tệp được dịch xuất hiện chính xác?
Chuỗi được bao gồm trong ngôn ngữ nhưng vì một lý do nào đó, chuỗi đó không được cập nhật. Điều này làm việc cho tôi: 'UIManager.put (" FileChooser.acceptAllFileFilterText ", UIManager.get (" FileChooser.acceptAllFileFilterText ", Locale.CHINA));' – Kara
Có lẽ nó * là * một lỗi. –
@Kara đó là lỗi, thực sự: tệp mặc địnhFilter được BasicFileChooserUI sử dụng không trả về phiên bản địa hoá của chuỗi, xem http://stackoverflow.com/a/17446693/203657 – kleopatra