Как перевести заголовки столбцов JFileChooser под Windows? - PullRequest
0 голосов
/ 17 декабря 2018

Я завершил перевод диалога JFileChooser на голландский.При этом я нашел этот ресурс очень полезным.

Во время тестирования этого перевода я столкнулся с проблемой, которую не могу решить: в Windows (Windows 7 Professional Service Pack1 64-разрядная) заголовки столбцов в подробном представлении не переводятся.Не имеет значения, какой Look & Feel я использую.Когда я тестирую на Mac, заголовки переводятся правильно.Вот некоторый код для демонстрации проблемы.Переключитесь на Детали, чтобы увидеть заголовки столбцов.Я добавил перевод Refresh to Verversen в контекстное меню, чтобы продемонстрировать, что другие переводы подобраны.

package translationjfilechooser;

import javax.swing.JFileChooser;
import javax.swing.UIManager;

public class TranslateColumnsJFileChooser {

    JFileChooser fc;

    public TranslateColumnsJFileChooser() {
        UIManager.put("FileChooser.fileNameHeaderText", "Naam");
        UIManager.put("FileChooser.fileSizeHeaderText", "Grootte");
        UIManager.put("FileChooser.fileTypeHeaderText", "Bestandstype");
        UIManager.put("FileChooser.fileDateHeaderText", "Gewijzigd op");
        UIManager.put("FileChooser.refreshActionLabelText", "Verversen");
        try {
            // It does not matter which Look & Feel you are using
            // UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
            UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
        } catch (Exception e) {
            System.err.println("Could not change look and feel");
            return;
        }
        fc = new JFileChooser();
        fc.setDialogTitle("This demonstrates that column headers are not translated under Windows");
        fc.showOpenDialog(fc);
        return;
    }

    public static void main(String[] args) {
        new TranslateColumnsJFileChooser();
    }
}

Кто-нибудь знает способ перевода этих заголовков?Или, по крайней мере, причина, по которой они не могут быть переведены?

Чтобы проанализировать проблему, я попытался найти ключи перевода для этих заголовков в исходном коде Java, но не смог их найти.Мне также не удалось найти ключ FileChooser.refreshActionLabelText.

1 Ответ

0 голосов
/ 05 января 2019

Я могу подтвердить, что это исправлено в Java 11 как VGR , размещенный в комментариях.

...