Swing中的预定义JDialog

时间:2012-11-03 17:57:08

标签: java swing jdialog

我正在开发一个库,它将翻译所有硬编码的字符串。

在一些帮助下,我设法找到了与之相关的所有字符串,所以这是一个开始。但是,我注意到在尝试将JFileChooser中的文件重命名为已经采用的名称时,我收到一个错误对话框,说我不能这样做。

这是Java,还是Windows(运行程序的操作系统)?

如果它是Java,我想知道更多关于如何自定义这样的JDialog,如果它是Windows,那我就无能为力,特别是因为该程序应该是交叉的平台。

1 个答案:

答案 0 :(得分:1)

您可以在安装它的目录中找到JDK的源代码。

在openJDK-7实现中,您正在寻找的String在 package com.sun.swing.internal.plaf.basic.resources和文件basic.java。 此目录中的其他文件对应于不同的翻译: basic_de.javabasic_es.java,...等

Swing类使用了所有String常量。

其中:

{ "FileChooser.renameErrorFileExists.textAndMnemonic", 
  "Cannot rename {0}: A file with the name you specified already exists. Specify a different file name." },

因此,您必须找到一种方法来覆盖属性FileChooser.renameErrorFileExists.textAndMnemonic以更改此对话框。

如果您想翻译这些字符串,请参阅this answer

不同的Java安装可能会有不同的字符串,因为这些文件不是官方Java API的一部分。

据我所知,这些文件不包含在由Oracle分发的src.zip中。