gpt4 book ai didi

java - Swing翻译库

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:11:23 24 4
gpt4 key购买 nike

我看过但找不到可以处理 swing 组件数据本地化问题的库。

因此,我决定创建自己的并公开...

唯一的问题是我真的不知道语言字符串在哪里...

如果有人愿意告诉我在 src 文件夹中查找的位置,我会非常乐意创建一个可以像这样工作的库:

libraryClassName.JFileChooser.setJFileChooserStringValue(string);

Swingcom/sun/java 文件夹中提到,它也在 javax 文件夹中。有许多类包含每个组件的 swing 组件名称(JFileChooser.javaFileChooserUI.javaBasicFileChooserUI.java MetalFileChooserUI.javaMultiFileChooserUI.javaFileChooserPainter.java 等)和许多可能包含也可能不包含本地化所需的字符串值的通用类。

我想,当找到一个组件的字符串值时,所有其他组件都应该在相应的位置。

所以,如果你能帮我解决这个问题,我会制作一个库来减轻许多试图翻译他们的程序的程序员的痛苦......

重要编辑: JFileChooser 是唯一一个在其中具有预定义字符串的 swing 组件吗?

最佳答案

好的,我会尽量不偷懒,帮你解决这个问题:

文件/src/javax/swing/plaf/basic/BasicFileChooserUI.java 有一个名为 installStrings 的好方法(第 282 行),其中包含您要查找的内容:

protected void installStrings(JFileChooser fc) {

Locale l = fc.getLocale();
newFolderErrorText = UIManager.getString("FileChooser.newFolderErrorText",l);
newFolderErrorSeparator = UIManager.getString("FileChooser.newFolderErrorSeparator",l);

newFolderParentDoesntExistTitleText = UIManager.getString("FileChooser.newFolderParentDoesntExistTitleText", l);
newFolderParentDoesntExistText = UIManager.getString("FileChooser.newFolderParentDoesntExistText", l);
// ...
}

看来您实际需要查找的是对 UIManager.getString(String, Locale) 的调用,其中似乎包含您要查找的键。实际的方法定义可能会揭示更多的 secret ,但我懒得去检查了;)

关于java - Swing翻译库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13211318/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com