一種基于模塊化儀器的菜單配置方法
【專利摘要】本發(fā)明提供一種基于模塊化儀器的菜單配置方法,將常用的模擬鍵盤區(qū)、軟按鍵菜單區(qū)、儀器顯示區(qū)打包為三個(gè)相互獨(dú)立的控件。其中模擬鍵盤區(qū)以及軟按鍵菜單區(qū)的按鍵和菜單的數(shù)據(jù)結(jié)構(gòu)以“樹(shù)形”結(jié)構(gòu)保存在.xml數(shù)據(jù)配置文件中,主程序加載數(shù)據(jù)配置文件并在模擬鍵盤區(qū)和軟按鍵菜單區(qū)顯示相應(yīng)的菜單名稱。通過(guò)對(duì)模擬鍵盤區(qū)和軟按鍵菜單區(qū)的按鍵和菜單進(jìn)行操作并將當(dāng)前按鍵的ID以消息的形式發(fā)送至軟按鍵菜單區(qū),由軟按鍵菜單區(qū)內(nèi)部的解析程序根據(jù)捕獲的ID就行數(shù)據(jù)解析,最終將執(zhí)行動(dòng)作的結(jié)果顯示在儀器顯示區(qū)中。采用上述方案,通過(guò)將菜單數(shù)據(jù)全部存入菜單數(shù)據(jù)配置文件中,不需要對(duì)程序代碼進(jìn)行任何修改,減少了代碼出錯(cuò)的概率,改善了代碼質(zhì)量。
【專利說(shuō)明】一種基于模塊化儀器的菜單配置方法【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于儀器菜單配置【技術(shù)領(lǐng)域】,尤其涉及的是一種基于模塊化儀器的菜單配置方法。
【背景技術(shù)】
[0002]儀器的菜單系統(tǒng)作為儀器與客戶交互的主要功能單元,是儀器的必備組件。一個(gè)好的菜單系統(tǒng),能夠有效的改善軟件界面,提高用戶體驗(yàn),菜單設(shè)計(jì)已成為軟件界面設(shè)計(jì)中的一項(xiàng)重要內(nèi)容。在進(jìn)行模塊化儀器的菜單設(shè)計(jì)時(shí),一般的做法是將菜單的名稱、功能函數(shù)直接寫入儀器軟件中,但是由于儀器類型的不同,以及用戶需求的不斷變化,都會(huì)導(dǎo)致產(chǎn)品研發(fā)人員花費(fèi)大量的時(shí)間去修改源程序,而且產(chǎn)品的維護(hù)很容易出錯(cuò),致使軟件的開(kāi)發(fā)效率以及代碼質(zhì)量普遍偏低。
[0003]然而,對(duì)于模塊化儀器的菜單設(shè)計(jì),同樣應(yīng)該具有一般性原則,如能按照統(tǒng)一的規(guī)范和軟件框架進(jìn)行設(shè)計(jì),不僅能夠提高軟件的開(kāi)發(fā)效率和代碼質(zhì)量,而且對(duì)于熟悉該規(guī)范的用戶,就能憑經(jīng)驗(yàn)掌握該軟件的各項(xiàng)功能和簡(jiǎn)便的操作方法,極大的提高了用戶體驗(yàn)。
[0004]功能型菜單設(shè)計(jì)的方法簡(jiǎn)單,開(kāi)發(fā)者可根據(jù)模塊化儀器功能隨意設(shè)置菜單,將菜單的名稱、功能函數(shù)直接寫入儀器軟件中。但正由于該方法主觀性太強(qiáng),不能很好的從用戶角度去考慮問(wèn)題,致使用戶很難快速熟悉儀器的操作方法。同時(shí),應(yīng)用該方法去設(shè)計(jì)軟件菜單,往往將軟件的功能代碼與顯示代碼混淆在一起,維護(hù)起來(lái)很容易出錯(cuò),經(jīng)常出現(xiàn)修正一處錯(cuò)誤,其他地方又出現(xiàn)其他錯(cuò)誤或者出現(xiàn)很難修正的錯(cuò)誤的情況,由此導(dǎo)致軟件的開(kāi)發(fā)效率和代碼質(zhì)量很低。
[0005]因此,現(xiàn)有技術(shù)存在缺陷,需要改進(jìn)。
【發(fā)明內(nèi)容】
[0006]本發(fā)明所要解決的技術(shù)問(wèn)題是針對(duì)現(xiàn)有技術(shù)的不足,提供一種基于模塊化儀器的
菜單配置方法。
[0007]本發(fā)明的技術(shù)方案如下:
[0008]一種基于模塊化儀器的菜單配置方法,其中,包括以下步驟:
[0009]步驟1:分別將模擬鍵盤區(qū)、軟按鍵菜單區(qū)以及儀器顯示區(qū)打包為三個(gè)獨(dú)立的.dll動(dòng)態(tài)鏈接庫(kù)文件;根據(jù)模塊化儀器的需求,將所述模擬鍵盤區(qū)、所述軟按鍵菜單區(qū)以及所述儀器顯示區(qū)進(jìn)行組合或裁剪,形成儀器主程序; [0010]步驟2:將包含菜單名稱、菜單ID、子項(xiàng)數(shù)量、方法ID內(nèi)容的菜單數(shù)據(jù)結(jié)構(gòu)按照樹(shù)形結(jié)構(gòu)保存至.xml菜單數(shù)據(jù)配置文件中;
[0011]步驟3:儀器主程序加載.xml菜單數(shù)據(jù)配置文件,并為菜單數(shù)據(jù)配置文件中的每一項(xiàng)菜單分配唯一的菜單項(xiàng)ID ;
[0012]步驟4:通過(guò)操作所述模擬鍵盤區(qū)的硬按鍵,將硬按鍵的ID以消息的形式發(fā)送至所述軟按鍵菜單區(qū),所述軟按鍵菜單區(qū)捕獲該消息獲得所述模擬鍵盤區(qū)硬按鍵的ID,由所述軟按鍵菜單區(qū)內(nèi)部的解析程序根據(jù)捕獲的硬按鍵的ID進(jìn)行解析,解析結(jié)果為當(dāng)前按鍵在.xml菜單數(shù)據(jù)配置文件中的數(shù)據(jù)結(jié)構(gòu),所述軟按鍵菜單區(qū)根據(jù)解析結(jié)果中的子項(xiàng)數(shù)量判斷如有一級(jí)菜單,則顯示相應(yīng)的一級(jí)菜單,否則,根據(jù)方法ID執(zhí)行對(duì)主程序及硬件進(jìn)行操作的動(dòng)作;
[0013]步驟5:通過(guò)操作所述軟按鍵菜單區(qū)的軟按鍵,由其內(nèi)部的解析程序根據(jù)當(dāng)前軟按鍵的ID進(jìn)行解析,解析結(jié)果為當(dāng)前按鍵在.xml菜單數(shù)據(jù)配置文件中的數(shù)據(jù)結(jié)構(gòu),所述軟按鍵菜單區(qū)根據(jù)解析結(jié)果中的子項(xiàng)數(shù)量判斷如有下一級(jí)菜單,則顯示相應(yīng)的下一級(jí)菜單,否則,根據(jù)方法ID執(zhí)行對(duì)主程序及硬件進(jìn)行操作的動(dòng)作;
[0014]步驟6:所述模擬鍵盤區(qū)與所述軟按鍵菜單區(qū)執(zhí)行的動(dòng)作最終顯示在所述儀器顯示區(qū)中。
[0015]所述的基于模塊化儀器的菜單配置方法,其中,所述步驟I中,所述模擬鍵盤區(qū)、所述軟按鍵菜單區(qū)以及所述儀器顯示區(qū)均作為獨(dú)立的控件在不同的儀器中使用。
[0016]所述的基于模塊化儀器的菜單配置方法,其中,所述步驟I中,菜單數(shù)據(jù)按照“樹(shù)形”結(jié)構(gòu)保存至.xml菜單數(shù)據(jù)配置文件中后只需修改.xml文件,便可實(shí)現(xiàn)不同儀器菜單的配置。
[0017]采用上述方案,通過(guò)將菜單數(shù)據(jù)全部存入菜單數(shù)據(jù)配置文件中,不需要對(duì)程序代碼進(jìn)行任何修改,減少了代碼出錯(cuò)的概率,改善了代碼質(zhì)量。并且實(shí)現(xiàn)了模擬鍵盤區(qū)和軟按鍵菜單的獨(dú)立調(diào)用,可在多種模塊化儀器的開(kāi)發(fā)中以及臺(tái)式儀器中直接使用或調(diào)用,不需要進(jìn)行重復(fù)開(kāi)發(fā),實(shí)現(xiàn)了模擬鍵盤區(qū)和軟按鍵菜單的復(fù)用,提高了代碼的復(fù)用率和軟件開(kāi)發(fā)效率。
【專利附圖】
【附圖說(shuō)明】
[0018]圖1為本發(fā)明基于模塊化儀器的菜單配置框圖。
[0019]圖2為本發(fā)明菜單配置流程圖。
【具體實(shí)施方式】
[0020]以下結(jié)合附圖和具體實(shí)施例,對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。
[0021]實(shí)施例1
[0022]首先將常用的模擬鍵盤區(qū)、軟按鍵菜單區(qū)、儀器顯示區(qū)打包為三個(gè)相互獨(dú)立的控件,以便在不同的儀器開(kāi)發(fā)中進(jìn)行組合或裁剪得到儀器主程序。其中模擬鍵盤區(qū)以及軟按鍵菜單區(qū)的按鍵和菜單的數(shù)據(jù)結(jié)構(gòu)以“樹(shù)形”結(jié)構(gòu)保存在.xml數(shù)據(jù)配置文件中,主程序加載數(shù)據(jù)配置文件并在模擬鍵盤區(qū)和軟按鍵菜單區(qū)顯示相應(yīng)的菜單名稱。通過(guò)對(duì)模擬鍵盤區(qū)和軟按鍵菜單區(qū)的按鍵和菜單進(jìn)行操作并將當(dāng)前按鍵的ID以消息的形式發(fā)送至軟按鍵菜單區(qū),由軟按鍵菜單區(qū)內(nèi)部的解析程序根據(jù)捕獲的ID就行數(shù)據(jù)解析,并根據(jù)解析結(jié)果顯示相應(yīng)的菜單或者執(zhí)行對(duì)主程序及硬件進(jìn)行操作的動(dòng)作,最終將執(zhí)行動(dòng)作的結(jié)果顯示在儀器顯示區(qū)中。
[0023]圖1所示為基于模塊化儀器的菜單配置框圖,主要由模擬鍵盤區(qū)I和軟按鍵菜單區(qū)2以及儀器顯示區(qū)3三部分組成。軟件框架結(jié)構(gòu)完全按照臺(tái)式儀器進(jìn)行設(shè)計(jì),符合用戶操作習(xí)慣。基本原理是由于儀器菜單的數(shù)據(jù)結(jié)構(gòu)為“樹(shù)形”數(shù)據(jù)結(jié)構(gòu),而在.xml文件中,數(shù)據(jù)之間的結(jié)構(gòu)恰為“樹(shù)形”結(jié)構(gòu),因此采用.xml文件記錄儀器的所有菜單,把每一項(xiàng)菜單定義為一個(gè)結(jié)構(gòu),包含菜單名稱、菜單ID、子項(xiàng)數(shù)量、方法ID等內(nèi)容,并將該結(jié)構(gòu)全部存放在菜單數(shù)據(jù)配置文件中,開(kāi)發(fā)者在開(kāi)發(fā)同一類儀器時(shí),就可以采用統(tǒng)一的軟件框架,僅僅通過(guò)修改菜單數(shù)據(jù)配置文件就可以對(duì)菜單的內(nèi)容進(jìn)行調(diào)整,以便向用戶顯示不同的菜單結(jié)構(gòu)或完成相近的儀器軟件的開(kāi)發(fā),避免去修改其他地方的程序,提高了軟件框架的復(fù)用率和開(kāi)發(fā)效率,代碼質(zhì)量也得到很大改善。
[0024]在該配置方案下,模塊化儀器軟件程序的三個(gè)組成部分相互獨(dú)立,每一部分均打包為獨(dú)立的控件,在儀器軟件的設(shè)計(jì)中可輕松的進(jìn)行組合和裁剪101。圖2為具體的菜單配置過(guò)程如下:將包含菜單(按鍵)名稱、菜單(按鍵)ID、子項(xiàng)數(shù)量、方法ID等內(nèi)容的菜單數(shù)據(jù)結(jié)構(gòu)按照“樹(shù)形”結(jié)構(gòu)保存至.xml菜單數(shù)據(jù)配置文件中102,儀器啟動(dòng)時(shí)主程序自動(dòng)加載菜單數(shù)據(jù)配置文件103,用戶通過(guò)點(diǎn)擊鍵盤區(qū)相關(guān)按鍵,鍵盤區(qū)將按鍵的ID以消息的形式發(fā)送至軟按鍵菜單區(qū)104,軟按鍵菜單區(qū)捕獲消息獲得按鍵ID105后,解析程序根據(jù)ID顯示相應(yīng)的菜單或者執(zhí)行相應(yīng)的動(dòng)作106,執(zhí)行動(dòng)作的結(jié)果反映到顯示區(qū)107,此時(shí)用戶可進(jìn)一步操作軟按鍵菜單區(qū),軟按鍵菜單中的每一項(xiàng)也都對(duì)應(yīng)不同的ID,解析程序同樣根據(jù)ID來(lái)執(zhí)行動(dòng)作,執(zhí)行的動(dòng)作的結(jié)果最終反映到儀器顯示區(qū)中。
[0025]實(shí)施例2
[0026]在上述實(shí)施例的基礎(chǔ)上,進(jìn)一步而言,本發(fā)明提供一種基于模塊化儀器的菜單配置方法,包括以下步驟:
[0027]步驟1:分別將模擬鍵盤區(qū)、軟按鍵菜單區(qū)以及儀器顯示區(qū)打包為三個(gè)獨(dú)立的.dll動(dòng)態(tài)鏈接庫(kù)文件;根據(jù)模塊化儀器的需求,將所述模擬鍵盤區(qū)、所述軟按鍵菜單區(qū)以及所述儀器顯示區(qū)進(jìn)行組合或裁剪,形成儀器主程序;
[0028]步驟2:將包含菜單(按鍵)名稱、菜單(按鍵)ID、子項(xiàng)數(shù)量、方法ID等內(nèi)容的菜單數(shù)據(jù)結(jié)構(gòu)按照“樹(shù)形”結(jié)構(gòu)保存至.xml菜單數(shù)據(jù)配置文件中;步驟3:儀器主程序加載.xml菜單數(shù)據(jù)配置文件,并為菜單數(shù)據(jù)配置文件中的每一項(xiàng)菜單(按鍵)分配唯一的ID ;
[0029]步驟4:通過(guò)操作所述模擬鍵盤區(qū)的硬按鍵,將該硬按鍵的ID以消息的形式發(fā)送至所述軟按鍵菜單區(qū),所述軟按鍵菜單區(qū)捕獲該消息獲得所述模擬鍵盤區(qū)硬按鍵的ID,由所述軟按鍵菜單區(qū)內(nèi)部的解析程序根據(jù)捕獲的硬按鍵的ID進(jìn)行解析,解析結(jié)果為當(dāng)前按鍵在.xml菜單數(shù)據(jù)配置文件中的數(shù)據(jù)結(jié)構(gòu),所述軟按鍵菜單區(qū)根據(jù)解析結(jié)果中的子項(xiàng)數(shù)量判斷如有一級(jí)菜單,則顯示相應(yīng)的一級(jí)菜單,否則,根據(jù)方法ID執(zhí)行對(duì)主程序及硬件進(jìn)行操作的動(dòng)作;
[0030]步驟5:通過(guò)操作所述軟按鍵菜單區(qū)的軟按鍵,由其內(nèi)部的解析程序根據(jù)當(dāng)前軟按鍵的ID進(jìn)行解析,解析結(jié)果為當(dāng)前按鍵在.xml菜單數(shù)據(jù)配置文件中的數(shù)據(jù)結(jié)構(gòu),所述軟按鍵菜單區(qū)根據(jù)解析結(jié)果中的子項(xiàng)數(shù)量判斷如有下一級(jí)菜單,則顯示相應(yīng)的下一級(jí)菜單,否則,根據(jù)方法ID執(zhí)行對(duì)主程序及硬件進(jìn)行操作的動(dòng)作;
[0031]步驟6:所述模擬鍵盤區(qū)與所述軟按鍵菜單區(qū)執(zhí)行的動(dòng)作最終顯示在所述儀器顯示區(qū)中。
[0032]所述步驟I中,所述模擬鍵盤區(qū)、所述軟按鍵菜單區(qū)以及所述儀器顯示區(qū)均作為獨(dú)立的控件在不同的儀器中使用。
[0033]所述步驟I中,菜單數(shù)據(jù)按照“樹(shù)形”結(jié)構(gòu)保存至.xml菜單數(shù)據(jù)配置文件中后只需修改.xml文件,便可實(shí)現(xiàn)不同儀器菜單的配置。
[0034]采用上述方案,通過(guò)將菜單數(shù)據(jù)全部存入菜單數(shù)據(jù)配置文件中,不需要對(duì)程序代碼進(jìn)行任何修改,減少了代碼出錯(cuò)的概率,改善了代碼質(zhì)量。并且實(shí)現(xiàn)了模擬鍵盤區(qū)和軟按鍵菜單的獨(dú)立調(diào)用,可在多種模塊化儀器的開(kāi)發(fā)中以及臺(tái)式儀器中直接使用或調(diào)用,不需要進(jìn)行重復(fù)開(kāi)發(fā),實(shí)現(xiàn)了模擬鍵盤區(qū)和軟按鍵菜單的復(fù)用,提高了代碼的復(fù)用率和軟件開(kāi)發(fā)效率。
[0035]應(yīng)當(dāng)理解的是,對(duì)本領(lǐng)域普通技術(shù)人員來(lái)說(shuō),可以根據(jù)上述說(shuō)明加以改進(jìn)或變換,而所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。
【權(quán)利要求】
1.一種基于模塊化儀器的菜單配置方法,其特征在于,包括以下步驟: 步驟1:分別將模擬鍵盤區(qū)、軟按鍵菜單區(qū)以及儀器顯示區(qū)打包為三個(gè)獨(dú)立的.dll動(dòng)態(tài)鏈接庫(kù)文件;根據(jù)模塊化儀器的需求,將所述模擬鍵盤區(qū)、所述軟按鍵菜單區(qū)以及所述儀器顯示區(qū)進(jìn)行組合或裁剪,形成儀器主程序; 步驟2:將包含菜單名稱、菜單ID、子項(xiàng)數(shù)量、方法ID內(nèi)容的菜單數(shù)據(jù)結(jié)構(gòu)按照樹(shù)形結(jié)構(gòu)保存至.xml菜單數(shù)據(jù)配置文件中; 步驟3:儀器主程序加載.xml菜單數(shù)據(jù)配置文件,并為菜單數(shù)據(jù)配置文件中的每一項(xiàng)菜單分配唯一的菜單項(xiàng)ID ; 步驟4:通過(guò)操作所述模擬鍵盤區(qū)的硬按鍵,將硬按鍵的ID以消息的形式發(fā)送至所述軟按鍵菜單區(qū),所述軟按鍵菜單區(qū)捕獲該消息獲得所述模擬鍵盤區(qū)硬按鍵的ID,由所述軟按鍵菜單區(qū)內(nèi)部的解析程序根據(jù)捕獲的硬按鍵的ID進(jìn)行解析,解析結(jié)果為當(dāng)前按鍵在.xml菜單數(shù)據(jù)配置文件中的數(shù)據(jù)結(jié)構(gòu),所述軟按鍵菜單區(qū)根據(jù)解析結(jié)果中的子項(xiàng)數(shù)量判斷如有一級(jí)菜單,則顯示相應(yīng)的一級(jí)菜單,否則,根據(jù)方法ID執(zhí)行對(duì)主程序及硬件進(jìn)行操作的動(dòng)作; 步驟5:通過(guò)操作所述軟按鍵菜單區(qū)的軟按鍵,由其內(nèi)部的解析程序根據(jù)當(dāng)前軟按鍵的ID進(jìn)行解析,解析結(jié)果為當(dāng)前按鍵在.xml菜單數(shù)據(jù)配置文件中的數(shù)據(jù)結(jié)構(gòu),所述軟按鍵菜單區(qū)根據(jù)解析結(jié)果中的子項(xiàng)數(shù)量判斷如有下一級(jí)菜單,則顯示相應(yīng)的下一級(jí)菜單,否則,根據(jù)方法ID執(zhí)行對(duì)主程序及硬件進(jìn)行操作的動(dòng)作; 步驟6:所述模擬鍵盤區(qū)與所述軟按鍵菜單區(qū)執(zhí)行的動(dòng)作最終顯示在所述儀器顯示區(qū)中。
2.如權(quán)利要求1所述的基于模塊化儀器的菜單配置方法,其特征在于,所述步驟I中,所述模擬鍵盤區(qū)、所述軟按鍵菜單區(qū)以及所述儀器顯示區(qū)均作為獨(dú)立的控件在不同的儀器中使用。
3.如權(quán)利要求1所述的基于模塊化儀器的菜單配置方法,其特征在于,所述步驟I中,菜單數(shù)據(jù)按照“樹(shù)形”結(jié)構(gòu)保存至.xml菜單數(shù)據(jù)配置文件中后只需修改.xml文件,便可實(shí)現(xiàn)不同儀器菜單的配置。
【文檔編號(hào)】G06F9/44GK103631588SQ201310588838
【公開(kāi)日】2014年3月12日 申請(qǐng)日期:2013年11月20日 優(yōu)先權(quán)日:2013年11月20日
【發(fā)明者】劉磊, 李龍, 董建濤, 陳慶磊, 王建中, 白亮, 李墩泰 申請(qǐng)人:中國(guó)電子科技集團(tuán)公司第四十一研究所