1. 光標定位問題的解決:
          (方法一)
          JBuilder中出現(xiàn)的光標問題不是Borland的問題,而應該是Sun留下的麻煩。大家知道,i18n問題主要通過操作
          系統(tǒng)對用戶工作地區(qū)和使用語言通過LOCALE
          (Window2000或XP中的控制面板上通過“區(qū)域和語言選項”)來進行區(qū)分,從而開發(fā)者通過使用相應區(qū)域和語言的屬性
          文件來實現(xiàn)軟件包對國際化的支持。具體來說,JBuilder通過使用JRE的font.properties.zh來實現(xiàn)對中文字體的支持。

          問題就出在SUN提供的font.properties.zh上。SUN在該
          文件中對各種字體的正常體,粗體,斜體均使用的是正常體。我們知道,在編輯器中,正常體和粗體或斜體占用的寬度是不同的。因此粗體(Bold)和正常體(plain)均使用正常體會導致編輯器對粗體字符寬度計算錯誤,這下,我們明白了問題的原因所在。有趣的是SUN對英文的字體屬性文件卻進行了正確的區(qū)別。(好像是故意的啊?!)比較font.properties和font.properties.zh文件,你可以直觀的了解該問題。
          =======Correct Font Setting =====
          # Component Font Mappings
          #
          dialog.plain.0=Arial,ANSI_CHARSET
          dialog.bold.0=Arial Bold,ANSI_CHARSET
          dialog.italic.0=Arial Italic,ANSI_CHARSET

          如上,plain應該使用字體XXX,bold則應該使用XXX Bold,italic則應該使用XXX Italic。

          明白了問題的根結,找到解決問題的辦法也就非常容易了。

          對font.properties.zh中的相應Component Font Mappings段替換為下面部分。

          # Component Font Mappings
          #
          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

          ====End =====
          重啟Jbuilder,即可!最后,希望你也將你機器本地的JDK和JBuilder中自帶的JDK中的font.properties.zh進行同樣的修改為佳。font.properties.zh
          文件在{JDK_Home}/jre/lib目錄下。




          (方法二)

          在上述操作后,有可能會出先彈出菜單的中文變成小方塊,所以采用另一種方法,如下:

          將jre/lib目錄中的font.properties.zh文件替換為如下內容:

          # @(#)font.properties.zh        1.10 02/03/07
          #
          # Copyright 2002 Sun Microsystems, Inc. All rights reserved.
          #

          # Component Font Mappings
          #
          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

          # Font File Names
          #
          filename.\\u5b8b\\u4f53=SIMSUN.TTC

          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

          # Missing Glyph Character
          #
          default.char=2751

          # Component Font Character Encodings

          #
          fontcharset.dialog.1=sun.io.CharToByteGBK
          fontcharset.dialog.2=sun.awt.windows.CharToByteWingDings
          fontcharset.dialog.3=sun.awt.CharToByteSymbol

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

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

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

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

          # Exclusion Ranges
          #
          exclusion.dialog.0=0100-20ab,20ad-f8ff

          exclusion.dialoginput.0=0100-20ab,20ad-f8ff
          exclusion.serif.0=0100-20ab,20ad-f8ff
          exclusion.sansserif.0=0100-20ab,20ad-f8ff
          exclusion.monospaced.0=0100-20ab,20ad-f8ff

          # Text Input Character Set
          #
          inputtextcharset=GB2312_CHARSET

          (方法三)

          此方法最簡單而且非常好用,只需改動一處即可:

          找到c:\Borland\JBuilder2005\bin\jbuilder.config配置文件,
          在這個文件的第26行后加入:
          vmparam -Dprimetime.editor.useVariableWidthFont=true,且參數(shù)vmparam和其后的參數(shù)值間應有空格
          重新啟動JBuilder2005就可以了.(已經過測試)




          2. 中文顯示問題

          JBuilder X 安裝后編輯器的字體文件列表只有兩個, 這樣給改變編輯器字體帶來了困難. 解決辦法: 將 JBuilder 9 的編輯器配置文件復制到 JBuilder X 的設置目錄下即可.
          Windows 2000 下的操作方法:
          將文件 C:/Documents and Settings/{CURRENT_USER}/.jbuilder9/user_zh.properties
          復制到目錄 C:/Documents and Settings/{CURRENT_USER}/.primetimeX 下即可, 注意不是復制到 /.jbuilderX 目錄下.
          如果您希望添加其他的字體文件列表到里面, 簡單的修改里面的字體文件名即可, 不過這些字體的中文名稱是使用 /uXXXX 序列編碼的. 具體就是添加一行
          editor.display;known_fonts.數(shù)字=Font Name

          給大家一個現(xiàn)成的例子: 將下列內容保存到文件 user_zh.properties, 然后復制到 {系統(tǒng)盤符}:/Documents and Settings/{CURRENT_USER}/.primetimeX 下即可, 注意不是復制到 /.jbuilderX 目錄下.
          ---------------------------
          中文問題解決: 
          方法一: 
             下載最新版的JDK把jre/lib下的font.properties.zh蓋掉JBX所用的JDK相同目錄JBX/jdk1.4/jre/lib下的相同文件就行了。 

          方法二: 
             Project  =>  Project  Properties  =>  General  =>  Encoding  =>改為GBK。 

          方法三:步驟如下: 
          1:  安裝JBX;不用說了; 

          2:  改變一下,Tools  =>  Preferences...  =>  Editor  =>  Display  里面的字體,主要是讓JBuilderX搜索一下系統(tǒng)的字體; 

          3:  關閉JBX; 

          4:  在用戶主目錄下(X:\\Documents  and  Settings\\Administrator\\) 
            打開.primetimeX\\user_zh.properties 
            將所有的editor.display;known_fonts.***=***拷貝出來; 
            新建一個文件,粘貼過去然后把這里的known_fonts全部替換成fixed_fonts,然后拷貝所有,回到user_zh.properties文件來; 
            替換掉這里的所有的editor.display;fixed_fonts.***=***行,保存; 

          5:  重起JBX,Tools  =>  Preferences...  =>  Editor  =>  Display  ==>  Font  Family里面的字體是全部Windows的字體了。


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           

          posts - 1, comments - 0, trackbacks - 0, articles - 1

          Copyright © ≮享受工作∷享受生活≯

          主站蜘蛛池模板: 布尔津县| 忻城县| 彩票| 峨边| 从化市| 麦盖提县| 永登县| 财经| 历史| 云和县| 宿迁市| 九江县| 普陀区| 山阴县| 乌鲁木齐市| 垦利县| 青阳县| 诏安县| 高邑县| 黑水县| 陆河县| 垣曲县| 桓仁| 九寨沟县| 安仁县| 涿州市| 砀山县| 剑川县| 东山县| 遂溪县| 改则县| 枣强县| 邵武市| 东兴市| 堆龙德庆县| 舟山市| 铅山县| 仙游县| 拜泉县| 南皮县| 深水埗区|