当前位置: 代码迷 >> Java相关 >> [转帖]解决Jbuilder光标对不齐的问题
  详细解决方案

[转帖]解决Jbuilder光标对不齐的问题

热度:299   发布时间:2005-06-17 19:53:00.0
[转帖]解决Jbuilder光标对不齐的问题

大家常常说JBuilder在中文系统中存在光标错位的问题,都认为这是JBuilder 的一个Bug,其实这实在是冤枉JBuilder了!大家讨论出来的解决方法无外乎 两种: 1、将编辑器的字体改为宋体,用这种方法带来的问题是,在宋体下的英文字 体实在难看,阅读起来不太顺眼; 2、就是将编辑器字体的粗体属性去掉,这样也影响代码的可读性。 其实,造成JBuilder光标错位的问题并不是Borland的错误,而是Java的宗 师――Sun的罪过!大家一定知道i18n吧?在不同的区域设置中,JDK自动调 用与之相对应的properties文件,而在JDK中,Sun所推出的与中文系统相对 应的properties文件存在问题,在它之中没有区分英文字体的正

常、粗体和斜体,从而导致了以上所说的问题,解决的方法很简单,只要将这 个properties文件修改正确就可以了,修改方法如下: 在jre/lib目录中找到font.properties.zh文件,编辑这个文件并修改成如下内容: # @(#)font.properties.zh1.16 00/10/06 # # AWT Font default Properties for Chinese Windows #

dialog.plain.0=Arial,ANSI_CHARSET dialog.plain.1=\u5b8b\u4f53,GB2312_CHARSET dialog.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialog.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialog.bold.0=Arial Bold,ANSI_CHARSET dialog.bold.1=\u5b8b\u4f53,GB2312_CHARSET dialog.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialog.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialog.italic.0=Arial Italic,ANSI_CHARSET dialog.italic.1=\u5b8b\u4f53,GB2312_CHARSET dialog.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialog.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialog.bolditalic.0=Arial Bold Italic,ANSI_CHARSET dialog.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET dialog.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialog.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.plain.0=Courier New,ANSI_CHARSET dialoginput.plain.1=\u5b8b\u4f53,GB2312_CHARSET dialoginput.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.bold.0=Courier New Bold,ANSI_CHARSET dialoginput.bold.1=\u5b8b\u4f53,GB2312_CHARSET dialoginput.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.italic.0=Courier New Italic,ANSI_CHARSET dialoginput.italic.1=\u5b8b\u4f53,GB2312_CHARSET dialoginput.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.bolditalic.0=Courier New Bold Italic,ANSI_CHARSET dialoginput.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET dialoginput.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED dialoginput.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

serif.plain.0=Times New Roman,ANSI_CHARSET serif.plain.1=\u5b8b\u4f53,GB2312_CHARSET serif.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED serif.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

serif.bold.0=Times New Roman Bold,ANSI_CHARSET serif.bold.1=\u5b8b\u4f53,GB2312_CHARSET serif.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED serif.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

serif.italic.0=Times New Roman Italic,ANSI_CHARSET serif.italic.1=\u5b8b\u4f53,GB2312_CHARSET serif.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED serif.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

serif.bolditalic.0=Times New Roman Bold Italic,ANSI_CHARSET

serif.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET serif.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED serif.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.plain.0=Arial,ANSI_CHARSET sansserif.plain.1=\u5b8b\u4f53,GB2312_CHARSET sansserif.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED sansserif.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.bold.0=Arial Bold,ANSI_CHARSET sansserif.bold.1=\u5b8b\u4f53,GB2312_CHARSET sansserif.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED sansserif.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.italic.0=Arial Italic,ANSI_CHARSET sansserif.italic.1=\u5b8b\u4f53,GB2312_CHARSET sansserif.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED sansserif.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.bolditalic.0=Arial Bold Italic,ANSI_CHARSET sansserif.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET sansserif.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.plain.0=Courier New,GB2312_CHARSET monospaced.plain.1=\u5b8b\u4f53,GB2312_CHARSET monospaced.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED monospaced.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.bold.0=Courier New Bold,GB2312_CHARSET monospaced.bold.1=\u5b8b\u4f53,GB2312_CHARSET monospaced.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED monospaced.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.italic.0=Courier New Italic,GB2312_CHARSET monospaced.italic.1=\u5b8b\u4f53,GB2312_CHARSET monospaced.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED monospaced.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.bolditalic.0=Courier New Bold Italic,GB2312_CHARSET monospaced.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET monospaced.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED monospaced.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

# name aliases # #alias.timesroman=serif #alias.helvetica=sansserif #alias.courier=monospaced

# for backward compatibility #timesroman.0=Times New Roman,ANSI_CHARSET #helvetica.0=Arial,ANSI_CHARSET #courier.0=Courier New,ANSI_CHARSET zapfdingbats.0=WingDings,SYMBOL_CHARSET

# font filenames for reduced initialization time # filename.\u5b8b\u4f53=SIMSUN.TTF

filename.Arial=ARIAL.TTF filename.Arial_Bold=ARIALBD.TTF filename.Arial_Italic=ARIALI.TTF filename.Arial_Bold_Italic=ARIALBI.TTF

filename.Courier_New=COUR.TTF

filename.Courier_New_Bold=COURBD.TTF filename.Courier_New_Italic=COURI.TTF filename.Courier_New_Bold_Italic=COURBI.TTF

filename.Times_New_Roman=TIMES.TTF filename.Times_New_Roman_Bold=TIMESBD.TTF filename.Times_New_Roman_Italic=TIMESI.TTF filename.Times_New_Roman_Bold_Italic=TIMESBI.TTF

filename.WingDings=WINGDING.TTF filename.Symbol=SYMBOL.TTF

# Default font definition # default.char=2751

# Static FontCharset info. # #fontcharset.dialog.0=sun.io.CharToByteCp1252 fontcharset.dialog.1=sun.io.CharToByteGBK fontcharset.dialog.2=sun.awt.windows.CharToByteWingDings

fontcharset.dialog.3=sun.awt.CharToByteSymbol

#fontcharset.dialoginput.0=sun.io.CharToByteCp1252 fontcharset.dialoginput.1=sun.io.CharToByteGBK fontcharset.dialoginput.2=sun.awt.windows.CharToByteWingDings fontcharset.dialoginput.3=sun.awt.CharToByteSymbol

#fontcharset.serif.0=sun.io.CharToByteCp1252 fontcharset.serif.1=sun.io.CharToByteGBK fontcharset.serif.2=sun.awt.windows.CharToByteWingDings fontcharset.serif.3=sun.awt.CharToByteSymbol

#fontcharset.sansserif.0=sun.io.CharToByteCp1252 fontcharset.sansserif.1=sun.io.CharToByteGBK fontcharset.sansserif.2=sun.awt.windows.CharToByteWingDings fontcharset.sansserif.3=sun.awt.CharToByteSymbol

#fontcharset.monospaced.0=sun.io.CharToByteCp1252 fontcharset.monospaced.1=sun.io.CharToByteGBK fontcharset.monospaced.2=sun.awt.windows.CharToByteWingDings fontcharset.monospaced.3=sun.awt.CharToByteSymbol

# Exclusion Range info. # exclusion.dialog.plain.0=00a0-f8ff exclusion.dialog.italic.0=00a0-f8ff exclusion.dialog.bold.0=00a0-f8ff exclusion.dialog.bolditalic.0=00a0-f8ff

exclusion.dialoginput.plain.0=00a0-f8ff exclusion.dialoginput.italic.0=00a0-f8ff exclusion.dialoginput.bold.0=00a0-f8ff exclusion.dialoginput.bolditalic.0=00a0-f8ff

exclusion.serif.plain.0=00a0-f8ff exclusion.serif.italic.0=00a0-f8ff exclusion.serif.bold.0=00a0-f8ff exclusion.serif.bolditalic.0=00a0-f8ff

exclusion.sansserif.plain.0=00a0-f8ff exclusion.sansserif.italic.0=00a0-f8ff exclusion.sansserif.bold.0=00a0-f8ff exclusion.sansserif.bolditalic.0=00a0-f8ff

exclusion.monospaced.italic.0=00a0-f8ff exclusion.monospaced.bold.0=00a0-f8ff exclusion.monospaced.bolditalic.0=00a0-f8ff

# charset for text input # inputtextcharset=GB2312_CHARSET

保存后,一切问题就解决了! 这种方法也适用于任何相同的问题。

[题外话]这种错误SUN真的应该好好反省一下了,希望以后他们做的东西能够 测试更好一些,不然……

搜索更多相关的解决方案: 光标  Jbuilder  转帖  

----------------解决方案--------------------------------------------------------