Chinaunix

标题: Unicod的显示必须从ResourceBundle中提取?见失败的代码:(,请分析。谢先 [打印本页]

作者: charseller    时间: 2007-03-25 22:40
标题: Unicod的显示必须从ResourceBundle中提取?见失败的代码:(,请分析。谢先
在应用中,定义了几种语言,如英语/法语/德语,现在要加上中文/韩文。

在以前对于绝大部分的应用,都是采取宏定义,然后从ResourceBundle自定义了英语/法语/德语(都是单字节定义的)的应用,很好;同时,也有部分程序是直接在程序中判断定义,也能很好显示不同语种。

现在中文/韩文加上了,但显示始终有问题,对于用ResourceBundle的,很好。但对于在应用中定义不能正确显示。是不是对于unicode必须要用ResourceBundle? (呵呵,我自己等下就要改来试试,不过还是发贴来请教)。

对于程序,大致是如下:
if (curLanguage.equals("\"Espa駉l\""))
        { //Spanish
            AAAAA = "Espan";
            BBBBB = "Espan";
         }
        else if (curLanguage.equals("\"Fran鏰is\""))
        { //French
            AAAAA = "France";
            BBBBB = "France";
        else if (curLanguage.equals("\"中文\""))
        { //Chinese
            AAAAA = "中文";
                BBBBB = "\uD6D0\uCEC4";   //中文unicode, unicode-l
                CCCC = "\uD0D6\uC4CE";    //中文unicode, unicode-b
         } else
           {//English定义}
对于以上的,AAAA/BBBBB/CCCC是应用于Choice的定义。AAAAA/BBBBB/CCCCC中文的始终无法正确显示:(
作者: charseller    时间: 2007-03-26 04:10
俺也把以上定义作到ResourceBundle中了,还是不行。但发现个现象:

在更改过程中发现对于如JLabel和JTextField(Swing)的,如上的方法(直接写)是可以显示正常的;但对于Choice(AWT)的不能。难道是Swing支持unicode,而AWT不支持?
作者: charseller    时间: 2007-03-26 04:16
Swing中似乎没有JChoice啊;哪类是与Choice的Swing部件是什么?得试试啊
作者: charseller    时间: 2007-03-26 16:55
丢人现眼了;JComboBox很方便替换Choice




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2