一、概述: 常做漢化的人都知道,VB程式的漢化是一個令人很頭疼的問題。現在有關VC、DELPHI程式的漢化技術已經相當成熟和完善,可是要想完美漢化一個VB程式卻是難上加難。首先VB程式中要漢化的字串非常分散和無序,而且夾雜了不少Unicode 字元,目前也沒有一個工具能夠很方便的處理它。當然這個問題還是可以解決的,字串照樣可以漢化,只不過麻煩一些而已。真正最讓人感到頭疼的是漢化後的字串如何修改其字型和字型大小。你可以想象一下,一大塊中國的方塊文字卻用的是8號英文字型,那將是多麼的難看,還不如不漢化呢! 從上個世紀我學漢化開始到現在,有關VB程式漢化的技術文章基本上沒有,如何漢化和修改字型的問題也始終沒有得到解決,真正稱得上是一個“世紀難題”了。我曾為此多方求助過許多編程高手,但均無結果,或許VB這種編程工具太爛了,高手們不屑於用的緣故吧。沒辦法,只好自己安裝了一個VB50,期望能找出些辦法。 說起來實在是有些意外,我原以為會花費很多的時間才能解決這個問題,但事實是花費了……兩天,字型的問題就已經基本解決了。不知是我悟性太好還是問題太簡單,“世紀難題”就這樣被解決掉真有些戲劇性,當然也很難理解以前那麼長的時間內為什麼就沒人解決這個問題呢? 二、一些聲明: 回到正題吧。既然是兩天內解決的,自然我不能100%保證這種辦法的絕對可靠性和適應性了,所以先聲明一些事情: 1、我使用的研究工具是VB50,研究的程式也都是VB50編製的,所以我的辦法能否完全適用於VB60或其他版本VB編製的程式還有待大家驗證。不過本人認為基本的東西應該是通用的,只可能有個別相關檔案的名稱會有些變化,我會在以下的論述中加以說明的。 2、這篇文章僅僅論述如何修改字型名稱和字型大小等方面的問題,至於字串如何漢化的問題我將考慮在以後的文章當中進行詳細的講解,本文就不涉及了。 3、我修改字型採用的工具是 UltraEdit 5.0,建議你也使用它,因為目前還沒有一個更方便的工具。當然請你一定注意其版本是 5.0,其他版本的 UltraEdit 我不推薦你使用。 4、本著夠用就行的宗旨,本文詳細講述了在修改字型過程中所有我可以想得到的問題,對於其他不需要改動的項目我就沒有仔細研究,如果你是一個編程高手,有意編製一個VB漢化工具的話,可以與我聯絡,我們可以進一步研究。 5、……想不起來了,還是邊說邊想吧…… 三、字串的分類: 根據本人的分析,從字型的角度分類的話,我認為一個VB編製的程式中通常存在兩種字串。一種是明確定義了字型名稱和字型大小的字串,另一種就是沒有定義字型名和字型大小的字串。兩種字串有可能同時存在於一個VB程式中,也可能只存在其中的一種。 從漢化的角度來看,兩種字串都是可以漢化和修改字型的,當然第一種修改更為容易些,而對於沒有定義字型的字串來說,就要麻煩一些了。接下來我就分別講述吧。 四、已定義了字型的字串: 如果一個字串已經明確定義了字型,那麼修改起來就會容易的多。在VB程式中,表示字型名稱和字型大小的字元通常都是跟在每一個被定義的字串後面的,所以,如果你在一個字串後面的不遠處還沒有發現有字型符號的話,那這個字串就是未明確定義字型的了:-) 看看: |