我正在研究一個將翻譯所有硬編碼字符串的庫。Swing中的預定義JDialogs
我有,人有一定的幫助,設法找出所有與之相關的字符串,所以這是一個開始。但是,我注意到,在嘗試將JFileChooser
中的文件重命名爲已取得的名稱時,出現錯誤對話框,說我無法做到這一點。
這是Java還是Windows?(運行該程序的操作系統)?
如果是Java,我想知道更多關於如何定製這樣一個JDialog
,如果它是Windows,那麼我就不能做很多事情,特別是因爲該程序應該是跨平臺的。
我正在研究一個將翻譯所有硬編碼字符串的庫。Swing中的預定義JDialogs
我有,人有一定的幫助,設法找出所有與之相關的字符串,所以這是一個開始。但是,我注意到,在嘗試將JFileChooser
中的文件重命名爲已取得的名稱時,出現錯誤對話框,說我無法做到這一點。
這是Java還是Windows?(運行該程序的操作系統)?
如果是Java,我想知道更多關於如何定製這樣一個JDialog
,如果它是Windows,那麼我就不能做很多事情,特別是因爲該程序應該是跨平臺的。
你可以找到你的JDK的源代碼,您在安裝它的目錄。
在你正在尋找的字符串在 package com.sun.swing.internal.plaf.basic.resources
和文件basic.java
定義在OpenJDK-7的實現。 該目錄中的其他文件對應不同的翻譯: basic_de.java
,basic_es.java
,......等等
但是也有一些由Swing類使用的所有字符串常量。
他們當中:
{ "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
。
更快地發佈[SSCCE](http://sscce.org/) – mKorbel
[de de deja deja vu ???](http://stackoverflow.com/a/12520992/714968)非常看起來和感覺敏感,默認情況下最重要的區別是SystemLookAndFeel和第二方之間的其餘部分是.. – mKorbel
如果我的答案適合你,不要忘記標記它! – mercutio