專利名稱:一種多語(yǔ)種菜單實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明屬于菜單實(shí)現(xiàn)方法,具體涉及一種多語(yǔ)種菜單實(shí)現(xiàn)方法。
背景技術(shù):
目前計(jì)算機(jī)程序的工作語(yǔ)言多由操作系統(tǒng)的工作語(yǔ)言界面確定,有些程序可以在 不同語(yǔ)言方式下工作,例如windoWS、VC++等?,F(xiàn)有的多語(yǔ)言菜單基本都是在編寫程序的過 程中固定該程序使用菜單的語(yǔ)言,同時(shí)該菜單文件隨同編寫的程序一同編譯,形成可執(zhí)行 文件。這種菜單實(shí)現(xiàn)方法的缺點(diǎn)在于①大部分程序僅支持一個(gè)語(yǔ)種的菜單。②即使在編 寫過程中預(yù)先設(shè)置了多個(gè)語(yǔ)種的菜單,在實(shí)際使用過程中由于受到操作系統(tǒng)語(yǔ)言的限制, 往往只能正確顯示與操作系統(tǒng)語(yǔ)言相同的菜單。③菜單語(yǔ)種固定,如果需要增加新語(yǔ)種的 菜單就必須在原文件中增加語(yǔ)言內(nèi)容,然后對(duì)整個(gè)程序進(jìn)行編譯,才能生成具有新語(yǔ)種菜 單的可執(zhí)行程序。另外一種情況是為改變程序菜單的顯示語(yǔ)言安裝新的語(yǔ)言包,安裝過程 時(shí)間長(zhǎng),安裝過程非常容易產(chǎn)生錯(cuò)誤??傊黾硬藛握Z(yǔ)種過程繁瑣,耗費(fèi)時(shí)間長(zhǎng)。④使用多 語(yǔ)種菜單的程序?yàn)榫W(wǎng)絡(luò)程序時(shí),使用該程序的所有用戶往往只能使用同一語(yǔ)種的菜單,對(duì) 需要使用不同語(yǔ)種工作的人來說非常不方便。⑤切換語(yǔ)言過程繁瑣,如前所述當(dāng)工作人員 需要切換菜單語(yǔ)言時(shí),需要安裝新語(yǔ)言的升級(jí)包。切換完成后如果還想使用第三種語(yǔ)言,仍 需再次安裝第三種語(yǔ)言的安裝包。而且如果希望使用原先使用過的語(yǔ)言,也需要重新安裝 該語(yǔ)言的語(yǔ)言包。切換過程非常繁瑣,造成時(shí)間和人力不必要的浪費(fèi)。除了上述缺點(diǎn)外,現(xiàn) 有的帶有語(yǔ)言切換功能的程序基本都為windows平臺(tái)下的程序,在imix平臺(tái)下尚無對(duì)菜單 進(jìn)行語(yǔ)言切換的方法。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種可以實(shí)時(shí)進(jìn)行語(yǔ)言切換的多語(yǔ)種菜單實(shí)現(xiàn)方法。本發(fā)明是這樣實(shí)現(xiàn)的一種多語(yǔ)種菜單實(shí)現(xiàn)方法,包括如下步驟(1)針對(duì)不同語(yǔ)種制作菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件;(2)根據(jù)需要將所選語(yǔ)言的相關(guān)文件與執(zhí)行程序關(guān)聯(lián)將所選語(yǔ)言的相關(guān)文件與執(zhí)行程序關(guān)聯(lián);當(dāng)需要進(jìn)行語(yǔ)言切換的時(shí)候,斷開現(xiàn)有 語(yǔ)言相關(guān)文件與執(zhí)行程序的關(guān)聯(lián),建立執(zhí)行程序與所需語(yǔ)言的關(guān)聯(lián)。如上所述的一種多語(yǔ)種菜單實(shí)現(xiàn)方法,其中,所述的步驟(1)可以通過下述步驟 實(shí)現(xiàn)(1. 1)編寫安裝文件安裝文件共兩個(gè),分別為name, ist和namee. ist,其中name, ist文件在菜單名下 面按照菜單語(yǔ)種的順序依次記錄各個(gè)語(yǔ)種的幫助信息,每個(gè)語(yǔ)種幫助信息的末尾用“.”表 示結(jié)束,在幫助信息后面依次排列每個(gè)菜單選項(xiàng)對(duì)應(yīng)的不同語(yǔ)言的翻譯;namee. ist用于 記錄與該菜單選項(xiàng)相應(yīng)的信息;(1. 2)形成菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件
讀入namee.ist文件的每一條信息,按照語(yǔ)言種類分別依次寫入到相應(yīng)語(yǔ)種的 nameN. err文件中,然后打開文件name, ist讀入菜單號(hào),各語(yǔ)言菜單名,接著讀入該菜單下 相應(yīng)語(yǔ)種的幫助信息,并將其寫入相應(yīng)幫助信息文件,生成幫助信息文件nameN. hip,同時(shí) 記下此菜單幫助信息在幫助信息文件中的記錄位置,當(dāng)讀到‘.’時(shí)開始將幫助信息寫入到 下一個(gè)語(yǔ)種的幫助信息文件中,再讀到‘.,時(shí)開始讀入該菜單的中文和英文菜單選項(xiàng),并將 各個(gè)選項(xiàng)依次寫入到每個(gè)語(yǔ)種的菜單文件中,再讀到‘.,時(shí),此菜單所有信息處理完成。使用本發(fā)明的效果是通過將菜單語(yǔ)言文件與執(zhí)行程序分開開發(fā),可以實(shí)現(xiàn)同一個(gè)執(zhí)行程序包含多個(gè)可選擇語(yǔ)言菜單的目的。菜單語(yǔ)言僅依賴于菜單相關(guān)文件組中語(yǔ)言的 編寫,因此無論操作系統(tǒng)為何種語(yǔ)言菜單都能顯示正確的語(yǔ)言。當(dāng)需要增加新語(yǔ)種的菜單 時(shí),僅需要制作相應(yīng)的菜單文件組,而且菜單文件組的制作與執(zhí)行程序分離,制作好的菜單 文件組可以實(shí)時(shí)與執(zhí)行程序關(guān)聯(lián),繼而實(shí)現(xiàn)菜單語(yǔ)種的實(shí)時(shí)切換。另外菜單文件組與操作 系統(tǒng)無關(guān),因此無論windows平臺(tái)還是imix平臺(tái),或其它操作系統(tǒng)平臺(tái)都可以使用該方法 方便地實(shí)現(xiàn)菜單語(yǔ)言的切換。
圖1是多語(yǔ)言輔助文件的結(jié)構(gòu)示意圖;圖2是另一個(gè)多語(yǔ)言輔助文件的結(jié)構(gòu)示意圖;圖3是形成菜單文件組的流程示意圖;圖4是菜單文件的結(jié)構(gòu)示意圖;圖5是菜單文件組與執(zhí)行程序關(guān)聯(lián)的示意圖。
具體實(shí)施例方式下面結(jié)合具體實(shí)施方式
對(duì)本發(fā)明進(jìn)行進(jìn)一步說明。在對(duì)本發(fā)明提供的方法進(jìn)行說明前,首先說明本發(fā)明方法中菜單結(jié)構(gòu)的定義方 式每個(gè)菜單除了有菜單名字和對(duì)應(yīng)的菜單選項(xiàng)外,還都有一個(gè)唯一的菜單編號(hào),菜單編號(hào) 定義了菜單系統(tǒng)的樹狀結(jié)構(gòu),0000是主菜單。主菜單的選項(xiàng)1,將得到1000菜單,選項(xiàng)2將 得到2000菜單。例如0000:1000:1100
12002000 21002200 22102220菜單選項(xiàng)中可以有各種輸入數(shù)據(jù)要求,如輸入數(shù)據(jù)的長(zhǎng)度和類型,可以是整型,實(shí) 型或字符型數(shù)據(jù)?!N多語(yǔ)種菜單實(shí)現(xiàn)方法,包括如下步驟(1)針對(duì)不同語(yǔ)種制作菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件上述三個(gè)文件可以通過下述步驟得到,也可以通過其它方式得到,只要三個(gè)文件 的格式符合下述要求即可(1. 1)編寫安裝文件
安裝文件共兩個(gè),分別為name, ist和namee. ist,這兩個(gè)安裝文件的格式分別如 圖1和圖2所示,它們也稱為多語(yǔ)言輔助文件組。其中name, ist用于記錄菜單的基本信息, 例如菜單號(hào),中文菜單名,英文菜單名(如果需要還可以增加法文、德文等)。在菜單名下面 按照菜單語(yǔ)種的順序依次記錄各個(gè)語(yǔ)種的幫助信息,每個(gè)語(yǔ)種幫助信息的末尾用“.”表示 結(jié)束。在幫助信息后面依次排列每個(gè)菜單選項(xiàng)對(duì)應(yīng)的不同語(yǔ)言的翻譯,例如若圖1中的“中 文菜單選項(xiàng)1”為“打開”命令時(shí),在其下方的“英文菜單選項(xiàng)1”就應(yīng)為“open”。在菜單選 項(xiàng)同一行可以增加中括號(hào),中括號(hào)中的長(zhǎng)度為該菜單選項(xiàng)輸入?yún)?shù)的長(zhǎng)度,在中括號(hào)后為 一個(gè)數(shù)字,該數(shù)字表示中括號(hào)中輸入?yún)?shù)的類型,數(shù)字為1 4中的一個(gè),其中1表示參數(shù) 為整型,2表示參數(shù)為實(shí)型,3表示參數(shù)為字符串,4表示參數(shù)為布爾型,可以是Y (yes)或者 N(no)中的一個(gè)。在數(shù)字后面為相應(yīng)語(yǔ)種的提示信息,例如菜單選項(xiàng)需要帶字符串實(shí)型參數(shù) 時(shí),由中括號(hào)所選定的長(zhǎng)度確定該實(shí)行參數(shù)的長(zhǎng)度,用數(shù)字“2”表示參數(shù)類型為實(shí)型,中文 提示信 息可以寫為“請(qǐng)輸入實(shí)型參數(shù)”,或者其它類似信息。依照上述規(guī)則填寫完全部菜單 選項(xiàng)的各語(yǔ)種信息。當(dāng)然也可以在該文件中增加其它菜單的內(nèi)容,如圖1中的“另一個(gè)菜單 內(nèi)容”。namee. ist用于記錄與菜單選項(xiàng)不直接相關(guān)的信息。如圖2所示,信息種類代碼有 三種,分別用數(shù)字1、2、3表示,其中1表示警告,2表示錯(cuò)誤,3表示提示。中文信息或英文 信息就是信息種類的具體內(nèi)容,例如當(dāng)信息種類代碼為3時(shí),中文信息或英文信息就是提 示信息的具體內(nèi)容。其余菜單選項(xiàng)也依次類推,直到將菜單中的全部菜單選項(xiàng)都定義完成。(1. 2)形成菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件其中菜單文件用nameN. men表示,幫助信息文件用nameN. hip表示,錯(cuò)誤與提示信 息文件用nameN. err表示。這三個(gè)文件的文件名中都有一個(gè)語(yǔ)言代碼N,對(duì)不同的語(yǔ)言用不 同的N表示,例如00表示中文,01表示英語(yǔ),那么nameOO. men, nameOO. hip和nameOO. err 為中文菜單的相關(guān)文件,nameOl. men, nameOl. hip和nameOl. err為英文菜單的相關(guān)文件。 如果還有其它語(yǔ)種,按照此規(guī)則繼續(xù)類推。形成菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件的過程如下下面以name, ist和namee. ist中僅有中文和英文信息為例進(jìn)行說明。讀入namee. ist文件的每一條信 息,按照語(yǔ)言種類分別依次寫入到nameOO. err和nameOl. err文件中。然后打開文件name, ist,依照如圖3所示的順序進(jìn)行執(zhí)行,具體為首先讀入菜單號(hào),中英文菜單名,接著讀入 該菜單下的中文幫助信息,并將其寫入中文幫助信息文件,生成幫助信息文件nameOO. hlp, 同時(shí)記下此菜單幫助信息在幫助信息文件中的記錄位置,當(dāng)讀到‘.’時(shí)開始將幫助信息寫 入到英文幫助信息文件nameOl. hip中,再讀到‘.,時(shí)開始讀入該菜單的中文菜單選項(xiàng),再 讀入該菜單的英文菜單選項(xiàng),并將各個(gè)選項(xiàng)依次寫入到中文菜單文件nameOO. men中,以及 英文菜單文件nameOl. men中,再讀到‘.,時(shí),此菜單所有信息處理完成,再轉(zhuǎn)到下一個(gè)菜單 的處理工作。直到所有菜單處理完成,就完成了生成幫助信息文件.hip的工作。同時(shí)所有 菜單文件的選項(xiàng)也都記錄下來了。然后把已經(jīng)得到的各菜單控制信息依次寫入到菜單選項(xiàng) 后面,最后形成的菜單文件nameN. men的結(jié)構(gòu)如圖4所示。菜單文件分為三部分1)第一 個(gè)記錄是三個(gè)內(nèi)容,它是控制信息,包括有菜單個(gè)數(shù)N和菜單總選擇數(shù)NS ;2)是所有菜單的 選項(xiàng)清單,共有NS個(gè)記錄,從第二個(gè)記錄開始;3)是每個(gè)菜單的控制信息內(nèi)容,它包括有每 個(gè)菜單的菜單名字,菜單選項(xiàng)的記錄位置,選項(xiàng)個(gè)數(shù),幫助信息在幫助信息文件中的記錄位 置,幫助信息長(zhǎng)度,它是從NS+1個(gè)記錄開始的,共有N個(gè)記錄。
至此所需的菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件制作完成。(2)根據(jù)需要將所選語(yǔ)言的相關(guān)文件與執(zhí)行程序關(guān)聯(lián)將所選語(yǔ)言的相關(guān)文件與執(zhí)行程序關(guān)聯(lián),如圖5所示將中文文件組與執(zhí)行程序相 關(guān)聯(lián)時(shí),根據(jù)nameOO. men,nameOO. hip和nameOO. err提供的相關(guān)信息,菜單就顯示為中文, 幫助信息與錯(cuò)誤提示等信息也顯示為中文。關(guān)聯(lián)通過下述過程實(shí)現(xiàn)程序執(zhí)行時(shí),首先從菜 單文件的第一個(gè)記錄讀入菜單個(gè)數(shù)N和菜單總選擇數(shù)NS。然后讀入每個(gè)菜單的菜單號(hào)并記 錄下該菜單控制信息在菜單文件中的記錄位置。接下來的工作是根據(jù)用戶的選擇確定使用 的菜單號(hào),并由菜單號(hào)和剛剛得到的記錄位置,再由.men文件直接得到菜單名字,菜單選 項(xiàng)的記錄位置,選項(xiàng)個(gè)數(shù),幫助信息在幫助信息文件中的記錄位置,幫助信息長(zhǎng)度。這些信 息保證了可以正確的顯示所有菜單信息。確定菜單號(hào)的方法是由當(dāng)前的菜單號(hào)和用戶的選 擇號(hào)確定,如用戶的選擇不是零,則把當(dāng)前的菜單號(hào)中的第一個(gè)“O”改為用戶的選擇號(hào),如 “4500”時(shí)用戶選“3”,則當(dāng)前菜單號(hào)變?yōu)椤?530”。如果用戶的選擇是零則把當(dāng)前的菜單號(hào) 中的第一個(gè)非“O”字符改為“0”,同樣,如“4530”時(shí)用戶選“0”,則當(dāng)前菜單號(hào)變?yōu)椤?500”。 除主菜單“0000”的“O”選擇是終止程序執(zhí)行外,所有菜單的“O”選項(xiàng)全部是退回到上一級(jí) 菜單去。當(dāng)需要進(jìn)行語(yǔ)言切換的時(shí)候,通過熱鍵或命令可以斷開現(xiàn)有語(yǔ)言相關(guān)文件與執(zhí)行 程序的關(guān)聯(lián),建立執(zhí)行程序與所需語(yǔ)言的關(guān)聯(lián),這樣就方便的實(shí)現(xiàn)了菜單語(yǔ)言的實(shí)時(shí)切換。
權(quán)利要求
一種多語(yǔ)種菜單實(shí)現(xiàn)方法,其特征在于包括如下步驟(1)針對(duì)不同語(yǔ)種制作菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件;(2)根據(jù)需要將所選語(yǔ)言的相關(guān)文件與執(zhí)行程序關(guān)聯(lián)將所選語(yǔ)言的相關(guān)文件與執(zhí)行程序關(guān)聯(lián);當(dāng)需要進(jìn)行語(yǔ)言切換的時(shí)候,斷開現(xiàn)有語(yǔ)言相關(guān)文件與執(zhí)行程序的關(guān)聯(lián),建立執(zhí)行程序與所需語(yǔ)言的關(guān)聯(lián)。
2.如權(quán)利要求1所述的一種多語(yǔ)種菜單實(shí)現(xiàn)方法,其特征在于所述的步驟(1)可以 通過下述步驟實(shí)現(xiàn)(1. 1)編寫安裝文件安裝文件共兩個(gè),分別為name, ist和namee. ist,其中name, ist文件在菜單名下面按 照菜單語(yǔ)種的順序依次記錄各個(gè)語(yǔ)種的幫助信息,每個(gè)語(yǔ)種幫助信息的末尾用“.”表示結(jié) 束,在幫助信息后面依次排列每個(gè)菜單選項(xiàng)對(duì)應(yīng)的不同語(yǔ)言的翻譯;namee. ist用于記錄 與該菜單選項(xiàng)相關(guān)的信息;(1. 2)形成菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件讀入namee. ist文件的每一條信息,按照語(yǔ)言種類分別依次寫入到相應(yīng)語(yǔ)種的nameN. err文件中,然后打開文件name, ist讀入菜單號(hào),語(yǔ)言菜單名,接著讀入該菜單下相應(yīng)語(yǔ)種 的幫助信息,并將其寫入相應(yīng)幫助信息文件,生成幫助信息文件nameN. hip,同時(shí)記下此菜 單幫助信息在幫助信息文件中的記錄位置,當(dāng)讀到‘.’時(shí)開始將幫助信息寫入到下一個(gè)語(yǔ) 種的幫助信息文件中,再讀到‘.,時(shí)開始讀入該菜單的中文和另一個(gè)語(yǔ)種的菜單選項(xiàng),并將 各個(gè)選項(xiàng)依次寫入到第一個(gè)語(yǔ)種和下一個(gè)語(yǔ)種的菜單文件中,再讀到‘.,時(shí),此菜單所有信 息處理完成。
全文摘要
本發(fā)明屬于菜單實(shí)現(xiàn)方法,具體涉及一種多語(yǔ)種菜單實(shí)現(xiàn)方法。它包括(1)針對(duì)不同語(yǔ)種制作菜單文件、幫助信息文件和錯(cuò)誤與提示信息文件;(2)根據(jù)需要將所選語(yǔ)言的相關(guān)文件與執(zhí)行程序關(guān)聯(lián)。將所選語(yǔ)言的相關(guān)文件與執(zhí)行程序關(guān)聯(lián);當(dāng)需要進(jìn)行語(yǔ)言切換的時(shí)候,斷開現(xiàn)有語(yǔ)言相關(guān)文件與執(zhí)行程序的關(guān)聯(lián),建立執(zhí)行程序與所需語(yǔ)言的關(guān)聯(lián)。使用本發(fā)明的效果是一個(gè)執(zhí)行程序包含多個(gè)可選擇語(yǔ)言;新語(yǔ)種的增加方便快捷;跨平臺(tái)使用。
文檔編號(hào)G06F9/44GK101826007SQ20091011816
公開日2010年9月8日 申請(qǐng)日期2009年3月4日 優(yōu)先權(quán)日2009年3月4日
發(fā)明者劉樹斌 申請(qǐng)人:中國(guó)核電工程有限公司