JBuilderX中显示中文
1. 在程序设计中使用中文
默认情况下,你不能在编写代码的使用使用中文,但有时候我们需要这样.比如:为了增强代码的可读性和维护性,我们需要添加适当的注释.
要解决这个问题其实并不困难.假定你的操作系统安装在C盘,那么在JBuilderX的安装成功后,有一个名叫user_zh.properties的文件位于C:\Documents and Settings\YourName\.primetimeX\下,以文本的形式打开它.
在这个文件中有这样两行(Line 238~239,如果你不曾经修改个这个文件的话):
editor.display;fixed_fonts.1=Courier New
editor.display;fixed_fonts.2=Lucida Sans Typewriter
这两种字体就是我们在JBuilderX中看到的(Tools->Preferences…):
如果我们修改user_zh.properties文档的话,就能够让Editor显示中文字符了!于是将user_zh.properties的这一部分改写了:
editor.display;fixed_fonts.1=Courier New
editor.display;fixed_fonts.2=Lucida Sans Typewriter
editor.display;fixed_fonts.3=DialogInput
也就是添加了字体DialogInput.如果要添加更多字体,格式为:
editor.display;fixed_fonts.4=FontNameHere
editor.display;fixed_fonts.5=FontNameHere
editor.display;fixed_fonts.6=FontNameHere
……………
不过需要注意的是,你所添加的字体必须在editor.display;known_fonts(该段就在editor_display;fixed_fonts下)枚举的字体集中.
这里,你可能有一个疑问,为什么要选择DialogInput字体,而不是"宋体"之类的字体?这并不是因为"宋体"不能直接被JBuilderX接受(这句话的意思是说:如果非要使用"宋体"的话,我们不能简单地在user_zh.properties中写editor.display;fixed_fonts.3=宋体,应该使用Unicode码来代替.我们知道'宋'的Unicode为' 5b8b', '体'的Unicode码为'4f53'.因此,应该写为: editor.display;fixed_fonts.3='\u5b8b\u4f53'),也不是任何技术上的原因,而是因为使用"宋体"的情况下,不论是中文字符,还是英文字符都显式得不那么"友好".使用DialogInput字体的效果还算比较可以接受.因此,这里使用此种字体.
修改完user_zh.properties后,打开JBuilderX,Tools->Preference…,选择Editor->Display,将字体设置为你期望的字体(比如DialogInput)后OK.不过,修改不会立即生效.你得重启JBuilderX才能看到效果:
2.在程序界面中使用中文
即使使用了1中的设置,在用户界面上的中文无疑还是一个问题.经过上面的设置,在JBuilder中,我们可以进行如下工作:
在其对应的源代码中,我们可以看到类似代码:
btnCompute.setText("计算");//这里是中文字符
但是,编译执行的效果为:
解决方法1:
将组件的Font属性设置为"宋体"等真正支持中文显示的字体(很遗憾DialogInput不是这样一种字体),就可以正常显示了.如下图所示:
笔者在实验中发现,并非需要设置所有组件的font属性.只设置一个组件的font属性,所有组件都会得到正确的显示.比如,在上面的程序中就只设置了那个JTextField对象的font属性,而没有设置"计算"按钮的font属性,但是工作得很好:
值得一提的是,至少要有一个组件被设置了正确的font属性,否则不会产生你期望的效果.
解决方法2:为JBuilderX配置新的JDK
JBuilderX默认使用的JDK为java version 1.4.2_01-b06.经笔者测试发现,如果使用java version 1.4.2-b28(当然还可能为其它版本,限于时间关系,笔者没有投入过多精力在其他版本的测试上),可以解决这界面上的中文显式问题.
从菜单Tools->Configure JDKs中可以为JBuilderX添加新的JDK,下面是一个添加后的效果图:
其中,被选中的JDK为新添加的JDK.当然,除了添加外你还得为工程配置一下,使它们使用的使新添加的JDK.选择Project->Project properties…,弹出如下对话框:
点击JDK后面的浏览按钮,选择新添加的JDK即可.如果你期望所有的Project都如此,你可以选择Project->Default Project properties…进行相同的配置.
配置完成后,重新编译运行,下面为其效果图:
顺便说一句,JBuilderX默认使用11pt的字体,在界面显示上其显示效果没有12pt的字体好(自我感觉如此).但是,很明显你不愿意为每个组件都设置它的字号.你可以这样来做: Tools->Preferences: