17-軟件部新員工培訓(xùn)期計(jì)劃_第1頁
17-軟件部新員工培訓(xùn)期計(jì)劃_第2頁
17-軟件部新員工培訓(xùn)期計(jì)劃_第3頁
17-軟件部新員工培訓(xùn)期計(jì)劃_第4頁
17-軟件部新員工培訓(xùn)期計(jì)劃_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

資料小超市資料小超市資料小超市資料小超市精品文檔軟件新員工培訓(xùn)期計(jì)劃(MMI開發(fā)工程師)修改記錄版本號(hào)擬制人/修改人擬制/修改日期更改理由V1.0佚名2010-02-01V1.1Kite2010-02-11增加了常用軟件安裝、編譯命令注意事項(xiàng)、實(shí)踐部分注意點(diǎn)(字串資源添加部分);V1.2Kite2010-02-26依據(jù)yy的建議,增加版本修改部分,并對(duì)實(shí)踐部分繼續(xù)進(jìn)行完善和補(bǔ)充,并對(duì)文檔進(jìn)行了標(biāo)準(zhǔn)化;前言本計(jì)劃主要針對(duì)新入職的無工作經(jīng)驗(yàn)的新員工在MTK平臺(tái)的開發(fā)和日常相關(guān)工作的培訓(xùn)計(jì)劃,培訓(xùn)主要關(guān)注點(diǎn)為日常工作的基本工作技能培養(yǎng),有關(guān)系統(tǒng)性的深入培養(yǎng)暫不納入本計(jì)劃之內(nèi),有待工作中持續(xù)加強(qiáng)和通過內(nèi)部專項(xiàng)培訓(xùn)進(jìn)行提高。對(duì)于有一定工作經(jīng)驗(yàn)但無MTK平臺(tái)經(jīng)驗(yàn)的新入職員工,指導(dǎo)老師可以根據(jù)實(shí)際情況,調(diào)整培訓(xùn)計(jì)劃,而不用完全按照本計(jì)劃表進(jìn)行。但是所作調(diào)整也需要另擬培訓(xùn)計(jì)劃表,作為培訓(xùn)之依據(jù),且培訓(xùn)之最終效果也應(yīng)達(dá)到本計(jì)劃中所列所有培訓(xùn)目標(biāo)項(xiàng)。對(duì)于有一定工作經(jīng)驗(yàn),且具M(jìn)TK平臺(tái)經(jīng)驗(yàn)的新入職員工,指導(dǎo)老師可以依據(jù)本計(jì)劃中所列的培訓(xùn)目標(biāo)項(xiàng)對(duì)其進(jìn)行評(píng)估。如果能達(dá)到我們培訓(xùn)目標(biāo)的培訓(xùn)項(xiàng)可以略過;如果無法達(dá)到的,必須也按照本計(jì)劃相應(yīng)培訓(xùn)項(xiàng)的措施進(jìn)行培養(yǎng)。開發(fā)環(huán)境搭建常用軟件安裝指南如下是常用軟件的安裝地址,相關(guān)軟件的按照指導(dǎo)文檔見:重點(diǎn)需要注意的是ADS、CC和CQ的安裝。序號(hào)軟件說明下載地址備注1VC/soft/MStudio98/2sourceinsight代碼瀏覽器網(wǎng)絡(luò)下載,或者找周圍同事3ultraedit文本編輯器網(wǎng)絡(luò)下載,或者找周圍同事4beyondcompare比較工具網(wǎng)絡(luò)下載,或者找周圍同事5perl編譯環(huán)境\\0\編譯環(huán)境\ActivePerl-11-MSWin32-x86-122208.msi6ADS12編譯環(huán)境\\0\編譯環(huán)境\ads_1.2參照《SCM常用軟件安裝指南.doc》注意安裝在C盤7ADSpatch編譯環(huán)境\\0\編譯環(huán)境\ADS1.2PatchToBuild848ADS12安裝完畢之后,把ADSpatch下的文件直接copy到安裝目錄下覆蓋原文件即可8MinGW編譯環(huán)境\\0\編譯環(huán)境\MinGW直接copy到ARM安裝目錄,與ADSv1_2目錄并列9msys編譯環(huán)境\\0\編譯環(huán)境\msys同上10incredibuild分布式編譯\\0\分布式編譯客戶端極其補(bǔ)丁\3.40Coordinatorlocation,computer選擇:0012incredibuild分布式編譯\\0\分布式編譯客戶端極其補(bǔ)丁\3.40\incredibuild_3.40patch運(yùn)行key.bat文件即可,注意該軟件有30天試用期,在試用期到期之前重新運(yùn)行key.bat,則恢復(fù)試用期到30天(有個(gè)task的補(bǔ)丁,可以每周自動(dòng)更新時(shí)間為30天)13Flashtool工具找周圍同事要用于把bin文件下載到手機(jī)上,操作參考相關(guān)文檔14Cather工具找周圍同事要用于調(diào)試跟蹤故障,操作參考相關(guān)文檔15Meta工具找周圍同事要查看手機(jī)文件系統(tǒng),操作參考相關(guān)文檔16cc(clearcase)版本控制\\0\clearcase_setup參照《SCM常用軟件安裝指南.doc》17cq(clearquest)故障管理\\0\cq參照《SCM常用軟件安裝指南.doc》常用軟件安裝注意要點(diǎn)ADS安裝請(qǐng)注意導(dǎo)入license.dat(在ADS安裝目錄下),否則ADS編譯報(bào)錯(cuò);sourceinsight輸入注冊(cè)碼后請(qǐng)注意不要回車,而應(yīng)該點(diǎn)擊OK按鈕,否則回車會(huì)按照試用(tryit)處理;分布式編譯過程中運(yùn)行buildmonitor可以觀察到分布式編譯所用到的計(jì)算機(jī),其實(shí)也是判斷分布式編譯是否有效的一種方法;Ultraedit如果打開文本文件為亂碼,請(qǐng)另存一下,然后從新打開;CC上軟件版本configspec的查詢,請(qǐng)登錄5/cqweb/login(可以問技術(shù)管理部申請(qǐng)賬號(hào)),選擇版本管理系統(tǒng)登錄進(jìn)入,公共查詢->版本跟蹤->all_project,查找并選擇項(xiàng)目名稱,再選擇“FOR自動(dòng)編譯”即可?;炯寄軐W(xué)習(xí)版本控制工具學(xué)習(xí)關(guān)于CC、CQ使用的簡單培訓(xùn)學(xué)習(xí)目標(biāo):a.會(huì)自己使用CC建立相應(yīng)項(xiàng)目的代碼環(huán)境;能夠明白CC中l(wèi)abel、branch、vob、cs、節(jié)點(diǎn)、view等概念。b.能夠熟悉CQ中BUG的管理流程。(此時(shí)并不要求對(duì)CC其他功能的熟練使用,后續(xù)會(huì)有相應(yīng)安排)編譯命令學(xué)習(xí)學(xué)習(xí)target環(huán)境的編譯命令學(xué)習(xí)目標(biāo):能夠區(qū)分new、remake、update、clean、resgen等的用法;編譯出錯(cuò)如何在LOG目錄下尋找相應(yīng)信息。這里先簡單介紹一下幾個(gè)命令的區(qū)別:new–用于生成.bin文件,它包含以下動(dòng)作clean+scan+compile+link使用方法一般是這樣的:makeD901gprs/gsmnew其中D901是cusotmer名稱,為了表述方便以D901為例,gprs/gsm是projectupdate–編譯一個(gè)或多個(gè)模塊,它包含以下動(dòng)作:scan+compile+link。使用方法是makeD901gprs/gsmupdatemmiresource,其中mmiresource是具體某個(gè)模塊的名稱,update會(huì)首先檢查文件之間的依賴關(guān)系,然后編譯發(fā)生改變的代碼。Update后面如果不跟模塊名稱,則是編譯所有模塊。remake–應(yīng)該是最常用的編譯命令,使用方法是:makeD901gprs/gsmremakemmiresource,它包含以下動(dòng)作:compile+link學(xué)習(xí)PC模擬器的編譯培訓(xùn)目標(biāo):學(xué)習(xí)modis的編譯,能夠生成所需要的工作組文件MoDIS.dsw,并在該工作組下進(jìn)行代碼調(diào)試。一般情況下,為了產(chǎn)生modis.dsw文件,需要進(jìn)行以下幾步:makeD901gprsnewmakeD901gprsgen_modismakeD901gprscodegen_modis其中命令new只需編譯大約幾分鐘,等資源編譯成功后,就可以終止,然后執(zhí)行g(shù)en_modis,codegen_modis,生成工作組文件modis.dsw,就說明命令執(zhí)行成功了。以上簡單介紹了比較常用的幾個(gè)編譯命令,具體請(qǐng)參考MTK文檔《MTK_MakeBuild_Design_Customer.pdf》,該文檔詳細(xì)介紹了make指令、Gsm.mak、Option.mak、Verno_*.bld、make.bat,以及每條指令是怎么解析的,告訴開發(fā)人員如何新添加一個(gè)模塊并編譯它。編譯命令注意事項(xiàng)如果新員工對(duì)于GNUgcc編譯過程有理解的話(沒有這方面的經(jīng)驗(yàn),則可以補(bǔ)充一下這方面的知識(shí),MTK的編譯過程本質(zhì)上也是對(duì)GNUgcc編譯的應(yīng)用,只不過做了一定的封裝,并借助了perl語言),將有助于理解MTK的編譯過程;不管是編譯還是Modis編譯,請(qǐng)事先啟動(dòng)分布式編譯工具(IncredibuildAgentTray-icon,啟動(dòng)之后在電腦屏幕右下角有一個(gè)箭頭顯示)以提高編譯效率,否則編譯時(shí)間會(huì)很長;VC可以直接關(guān)聯(lián)分布式,這樣在VC上就可以出現(xiàn)分布式的按鈕;編譯過程中請(qǐng)注意不要改動(dòng)cmd窗口屬性中緩沖區(qū)大小的設(shè)置,如果設(shè)置過大,可能因內(nèi)存不足導(dǎo)致編譯時(shí)間過長(即使是啟動(dòng)了分布式編譯);在VC環(huán)境下運(yùn)行Modis,如果出現(xiàn)頭文件找不到的情況,請(qǐng)查看modis目錄下各個(gè)子目錄下相關(guān)ini文件中有關(guān)該頭文件的指定路徑,并檢查該路徑下是否存在該頭文件;運(yùn)行modis看不到界面,請(qǐng)檢查MoDIS\MoDIS\Skins目錄下的圖片文件是否沒有解壓縮,從而造成圖片資源無法加載;如果modis運(yùn)行報(bào)有些函數(shù)或者變量找不到的鏈接錯(cuò)誤,則在\MoDIS\drv_sim\src\w32_dummy_wndrv.c源文件中添加該函數(shù)或者變量定義,并重新運(yùn)行即可;分布式編譯錯(cuò)誤排除:定位是哪個(gè)模塊出現(xiàn)分布式編譯錯(cuò)誤,對(duì)該模塊進(jìn)行clean操作,重新對(duì)該模塊單獨(dú)進(jìn)行remake,最后再對(duì)整個(gè)工程remake;如果只修改了*.lis文件(即增加了源文件,并且頭文件沒有被放在新增加的目錄下),只需要remake;modis需要重新gen_modis。MTK框架文檔學(xué)習(xí)本階段主要進(jìn)行MMI相關(guān)方面知識(shí)的學(xué)習(xí),主要是MTK框架理論知識(shí)的學(xué)習(xí),是比較重要的,為以后深入研究各個(gè)模塊,解決系統(tǒng)性問題打下了基礎(chǔ)。學(xué)習(xí)目標(biāo):1. 大致了解MTK軟件框架和相關(guān)的基本概念2. 熟悉MTK的category概念3. MMI框架的學(xué)習(xí),MMIFrameWork,History機(jī)制,screen、app概念4.了解nvram的作用MMIframeworkandarchitectureMMIFramework介紹了MTK的MMI方面的軟件架構(gòu),這部分主要包括:事件的處理history的管理OSLWrapperNVRAM文件系統(tǒng)管理UIlayer與Layer4的交互解觸摸屏的響應(yīng)機(jī)制這部分的參考文檔有:a.MMI_framework_and_architecture.pdfb.MMIPlatformSourceCodeTraining.pdf 如上兩篇文檔非常重要,要對(duì)整個(gè)MTK軟件架構(gòu),尤其是MMI架構(gòu)要有一個(gè)整理的理解,學(xué)習(xí)注意點(diǎn):L4層很多術(shù)語和GSM/GPRS通信協(xié)議相關(guān),要求新員工有一定的通信知識(shí)基礎(chǔ)(沒有學(xué)過的要補(bǔ)補(bǔ)基礎(chǔ)課,比如通信原理、計(jì)算機(jī)網(wǎng)絡(luò)、GSM/GPRS無線通信原理等,重點(diǎn)是對(duì)通信模型、OSI七層協(xié)議棧、GSM/GPRS相關(guān)的術(shù)語的理解);請(qǐng)參考傅貴寫的MTK-MMI初學(xué)者培訓(xùn)文檔,里面有詳細(xì)的編程示例介紹。NVRAM的學(xué)習(xí)NVRAM為用戶提供了數(shù)據(jù)存取的途徑,用戶可以以一種統(tǒng)一固定的方式訪問NVRAM中的數(shù)據(jù),而不用關(guān)心存儲(chǔ)數(shù)據(jù)的物理設(shè)備的介質(zhì)是EEPROM還是FLASH。所以當(dāng)?shù)讓哟鎯?chǔ)數(shù)據(jù)的介質(zhì)變化時(shí),用戶上層的應(yīng)用程序接口無需變化。這部分主要的學(xué)習(xí)文檔有:1.NVRAM_Configuration_Guide_User(2).pdf2.FS_NVRAM_Oct2004(1).pdf3.NVRAM_Restore_Factory_Default_SOP.pdfFileSystem的學(xué)習(xí)這部分包括文件系統(tǒng)的API函數(shù),以及filemanager,其中filemanager分為兩部分:FMGREngine,F(xiàn)MGRUI,F(xiàn)MGREngine為audioplayer,Imageviewer,camera,profile等提供了文件操作的接口。這部分的參考文檔有:1.Presentation-FileSystem-20040702.pdf2.MMI_DD_File_Manager.pdf3.DD_FRM_GDI.pdf4.DD_FRM_GDI_ROTATE.pdf5.Training_GDI.pdfGDI的學(xué)習(xí)模塊研究在學(xué)習(xí)了以上理論知識(shí)之后,可以選擇一個(gè)模塊為入口點(diǎn),來進(jìn)行代碼研讀,以一斑以窺全局,這樣可以快速地熟悉MTK代碼結(jié)構(gòu)。實(shí)踐部分這部分主要是完成一些簡單任務(wù):1. 在模擬器上完成某個(gè)菜單下增加一個(gè)mytest菜單,mytest下有兩個(gè)子菜單,子菜單1用來一個(gè)list菜單,子菜單2用來彈出一個(gè)pop窗口,并且在定時(shí)30秒后自動(dòng)退出。每個(gè)菜單需要使用新的字符串和icon。培訓(xùn)目標(biāo):熟悉各類資源(字串、圖片、菜單等)的使用、keyhandler的概念、hilight概念、定時(shí)器Timer使用;2.在現(xiàn)有8張墻紙基礎(chǔ)上添加一張墻紙,以支持9張壁紙,并設(shè)置新加墻紙為缺省墻紙,缺省屏保打開,等待時(shí)間為30秒培訓(xùn)目標(biāo):nv的概念;nv項(xiàng)的修改3. 客戶版本制作培訓(xùn)目標(biāo):與客戶版本相關(guān)的文件熟悉,熟悉編譯過程中這些客戶資源相關(guān)的文件的來龍去脈;CC新文件提交,老文件修改;客戶版本發(fā)布流程。MTK開發(fā)工具使用MTK開發(fā)工具主要包括以下幾部分,這些工具都是以后工具過程中經(jīng)常使用的:catch工具–手機(jī)的trace工具,通過把消息和trace打印到屏幕上,清晰地顯示出手機(jī)的運(yùn)行過。MTKrelease過來的Catcher可能隱藏一些消息。Catcher打印到屏幕的消息比較常用的函數(shù)有:PRINT_INFORMATION、kal_prompt_trace、kal_buffer_trace。具體使用說明請(qǐng)參照《Catcher_User_Manual_for_Customer_2007.11.30.pdf》。Flash_tool.exe工具–用于下載.bin文件到手機(jī)。File2Array.exe工具–轉(zhuǎn)化mp3、圖片文件為二進(jìn)制文件,供程序使用。META工具–META可以查看手機(jī)文件系統(tǒng),NVRAM項(xiàng)等。新員工技術(shù)小結(jié)分配具體模塊,熟悉該模塊,解決該模塊相應(yīng)的故障,并負(fù)責(zé)研究該模塊,寫出相應(yīng)模塊的學(xué)習(xí)文檔。部門轉(zhuǎn)正評(píng)審使用內(nèi)部答辯會(huì)的形式進(jìn)行轉(zhuǎn)正答辯,由非指導(dǎo)方來對(duì)培訓(xùn)效果進(jìn)行檢驗(yàn)。MMI學(xué)習(xí)要點(diǎn)總結(jié)模塊代碼添加步驟MTKMMI模塊添加三步驟源文件的添加:添加新的MMI模塊一般放在plutommi\mmi\目錄下面,最好在plutommi\mmi目錄下另建子目錄,頭文件和源代碼分開兩個(gè)子目錄存放,目錄名稱一般遵循如下命名規(guī)范:<模塊名稱>inc、<模塊名稱>src;模塊的編譯配置:在make目錄下建立子目錄(該子目錄為功能名稱和源文件所在目錄名對(duì)應(yīng)起來),該目錄下依據(jù)如下命名規(guī)范分別創(chuàng)建4個(gè)文件:<功能名稱>.lis、<模塊名稱>.pth、<模塊名稱>.inc、<模塊名稱>.def;其中inc文件中要包含本模塊源文件所用到的所有頭文件路徑位置;def文件可以為空,如果缺少該文件,makegen_modis的時(shí)候可能會(huì)出異常;編譯輸出:在option.mak文件中添加模塊名和宏開關(guān),關(guān)鍵字為:COMPLIST和COM_DEFS,以確保所加代碼能夠被正確的編譯;以上三個(gè)步驟回答和解決了如下三個(gè)問題:你所編寫的代碼源文件和頭文件在物理存儲(chǔ)文件上是如何組織的(邏輯上的組織要看設(shè)計(jì)文檔或者存在于編碼者的腦子里)?你所編寫的源碼告知編譯器如何編譯(告知編譯器源碼的相對(duì)路徑、源文件列表和頭文件,其實(shí)這些配置文件的內(nèi)容最終會(huì)被作為tcc編譯命令的編譯參數(shù))?編譯的輸出是什么(編譯的輸出是庫文件,最終體現(xiàn)在option.mak文件的配置中)?字串資源添加步驟MMIDataType.h中添加兩個(gè)宏定義:<模塊名稱>_BASE、<模塊名稱>_BASE_MAX,用于定義本模塊資源ID的起始位和資源ID數(shù)量最大數(shù),我們所有資源ID的定義都要基于<模塊名稱>_BASE這個(gè)宏進(jìn)行累加;MMIDataType.h中的理解重點(diǎn)是兩個(gè)宏定義:GET_RESOURCE_BASE(id)和GET_RESOURCE_MAX(id),這涉及到一個(gè)##符號(hào)是宏組合的概念;在<模塊名稱>defs.h文件定義一個(gè)字串的枚舉類型,用于羅列所有字串ID的定義;在ref_list_09A.xls定義各個(gè)字串的內(nèi)容,要注意和defs.h中的ID要對(duì)應(yīng);在\plutommi\Customer\CustResource\PLUTO_MMI\Res_MMI目錄下新建一個(gè)源文件res_<模塊名稱>.c,新建一個(gè)函數(shù)并調(diào)用ADD_APPLICATION_STRING2宏添加本模塊所用到的所有的字符資源;如果res_<模塊名稱>.c中包含了自定義的頭文件,則需要在plutommi\Customer\ResGenerator\makefile文件中添加該頭文件的路徑,以便編譯res_<模塊名稱>.c文件時(shí)能夠順利編譯通過,否則下一步的make命令可能執(zhí)行報(bào)錯(cuò);該makefile文件是資源裝載預(yù)編譯程序的makefile文件;執(zhí)行資源編譯命令:make<項(xiàng)目名稱>gprsresgen;如果字串出現(xiàn)部分亂碼,請(qǐng)檢查在資料列表中資源的位置放的地方是否正確?比如把繁體字體和簡體字體的位置搞反了。屏幕模板理解重點(diǎn)對(duì)于屏幕模板的理解重點(diǎn)是三個(gè)數(shù)據(jù)結(jié)構(gòu):組件結(jié)構(gòu),例子:constU8categoryxxx[];該結(jié)構(gòu)定義了一個(gè)Category中包含的控件(一個(gè)Category是由多個(gè)控件組成的);組件屬性結(jié)構(gòu)數(shù)組,例子:constS16coordinate_setxxx[];該結(jié)構(gòu)定義了一個(gè)Category中包含的控件屬性;映射表(數(shù)組):dm_category_id_control_setmap_structg_category_controls_map;該映射表通過category_id建立起CategoryScreen、DM、TouchScreen之間的聯(lián)系。各種ShowCategoryScreen函數(shù)定義可以參考文檔《MTK_MMI函數(shù)手冊(cè).pdf》,Category中所包含的控件定義可以在CustCoordinates.c中參閱到。定時(shí)器的使用MTK使用的定時(shí)器函數(shù)在Mmi_frm_timer_gprot.h中有定義,使用定時(shí)器的步驟如下:timer_id的定義,在TimerEvents.h中定義自己的timerID,請(qǐng)注意務(wù)必放在MAX_TIMERS之前定義;定義定時(shí)處理函數(shù),在定時(shí)時(shí)間到達(dá)之后進(jìn)行相關(guān)處理,典型的操作包括:StopTimer和GoBackHistory;在ShowCategoryScreen之后StartTimer;注意delay的時(shí)間為毫秒。資源編譯錯(cuò)誤定位資源編譯可能出現(xiàn)的錯(cuò)誤定位如果出現(xiàn)“Makefile:166:***missingseparator(didyoumeanTABinsteadof8spaces?).Stop.”類似的錯(cuò)誤,請(qǐng)檢查對(duì)應(yīng)的makefile文件,可能是該makefile文件中出現(xiàn)了空格;如果運(yùn)行時(shí)字串顯示不出來,請(qǐng)檢查一下如下文件是否包含了自己定義的字串\plutommi\Customer\CustResource\ref_list.txt;如果沒有,則有可能沒有把該文件從code目錄下copy過來,需要重新執(zhí)行make<項(xiàng)目名稱>gprsresgen。其它注意事項(xiàng)各個(gè)版本的入口程序會(huì)與傅貴教材可能會(huì)有出入,請(qǐng)請(qǐng)教一下自己的師傅所取版本的入口程序位置;Modis能夠編譯通過,tcc未必能夠編譯通過,不同的編譯器對(duì)于語法的規(guī)則要求是不同的,比如在VC下可能是warning,但在tcc環(huán)境下可能就是錯(cuò)誤了;就個(gè)人感覺來說tcc的編譯要比vc嚴(yán)格的多。常用Category速查序號(hào)Category編號(hào)類型說明1ShowCategory1ScreenShowCategory4ScreenShowCategory6ScreenShowCategory55ScreenShowCategory56Screen列表文本列表顯示框,4附帶右軟鍵及icon,6附帶左右軟鍵,使用場(chǎng)景示例:通訊錄顯示1ShowCategory2Screen提示錯(cuò)誤提示框,附帶左右軟鍵ShowCategory7Screen提示選擇提示框,附帶左右軟鍵,使用場(chǎng)景示例:刪除提示2ShowCategory3Screen列表文本列表顯示框,并能顯示4列icon3ShowCategory1ScreenShowCategory4ScreenShowCategory6ScreenShowCategory55ScreenShowCategory56Screen列表文本列表顯示框,4附帶右軟鍵及icon,6附帶左右軟鍵,使用場(chǎng)景示例:通訊錄顯示4ShowCategory23ScreenShowCategory24ScreenShowCategory73ScreenShowCategory85ScreenShowCategory89Screen列表文本列表顯示框23:能夠顯示兩列文本,icon在左24:附帶左右軟鍵,icon在右73:能夠顯示一列文本,兩列icon,并有高亮參數(shù)85:附帶數(shù)字icon89:與85的區(qū)別在于文本列自動(dòng)生成ShowCategory101Screen列表5ShowCategory5ScreenShowCategory21Screen文本顯示文本顯示框,5附帶左右軟鍵,21附帶左軟鍵ShowCategory9ScreenShowCategory58ScreenShowCategory59ScreenShowCategory60ScreenShowCategory61ScreenShowCategory62ScreenShowCategory63ScreenShowCategory64ScreenShowCategory65Screen文本顯示文本顯示框:9的icon在文本下方;58、59附帶左右軟件,icon在文本的左邊,58和59只有一個(gè)參數(shù)的區(qū)別,后者參數(shù)為指針;60、61附帶標(biāo)題,標(biāo)題附帶icon,60和61只有一個(gè)參數(shù)的區(qū)別,后者參數(shù)為指針62、63附帶icon并顯示在中間,且不全屏顯示,62和63只有一個(gè)參數(shù)的區(qū)別,后者參數(shù)為指針64、65和62、63只有顯示位置的區(qū)別:62、63的文本在上icon在下,64、65反之ShowCategory69ScreenShowCategory70Screen文本顯示文本顯示框,文本可編輯,69和70只有一個(gè)參數(shù)的區(qū)別,后者參數(shù)為指針ShowCategory28ScreenShowCategory29Screen文本顯示顯示短信內(nèi)容ShowCategory34ScreenShowCategory35Screen文本顯示文本和圖片顯示,附帶左右軟鍵,35增加了一個(gè)可編輯的文本框ShowCategory74Screen文本顯示Scroll,用于顯示較長的文本,尤其是一屏顯示不完的,超出一屏可以滾動(dòng)顯示ShowCategory71ScreenShowCategory72Screen進(jìn)度顯示進(jìn)度顯示框,71和72只有一個(gè)參數(shù)的區(qū)別,后者參數(shù)為指針ShowCategory87ScreenShowCategory88Screen進(jìn)度顯示進(jìn)度條顯示,88有主輔兩個(gè)進(jìn)度條ShowCategory8ScreenShowCategory67ScreenShowCategory68Screen圖片/動(dòng)畫圖片顯示框,附帶左右軟鍵8:可顯示圖片和文本67:只顯示icon68:停用ShowCategory142Screen圖片/動(dòng)畫顯示圖片ShowCategory301Screen圖片/動(dòng)畫顯示icon的消息框ShowCategory106ScreenShowCategory166ScreenShowCategory313Screen圖片/動(dòng)畫顯示動(dòng)畫:106用于顯示屏保動(dòng)畫,166用于顯示其它動(dòng)畫,313和166從參數(shù)上看無區(qū)別ShowCategory10ScreenShowCategory25ScreenShowCategory26ScreenShowCategory27ScreenShowCategory90Screen時(shí)間/日期/日歷系統(tǒng)時(shí)間顯示框,附帶左右軟鍵10:只顯示系統(tǒng)時(shí)間25:顯示時(shí)間和日期并可以編輯26:只顯示日期并可編輯27:只顯示時(shí)間并可編輯90:ShowCategory80ScreenShowCategory81ScreenShowCategory82Screen時(shí)間/日期/日歷80/81:公歷顯示82:農(nóng)歷顯示ShowCategory11ScreenShowCategory36Screen單選單選按鈕顯示框,附帶左右軟鍵,36增加了一個(gè)高亮參數(shù),使用場(chǎng)景示例:情景模式選擇ShowCategory12ScreenShowCategory13ScreenShowCategory50ScreenShowCategory51ScreenShowCategory75Screen復(fù)選11/12:復(fù)選按鈕顯示框,附帶左右軟鍵,11顯示的列表是靜態(tài)的,12顯示的列表是動(dòng)態(tài)的50/51:51比50多了高亮參數(shù)75:停用ShowCategory14Screen九宮格顯示ShowCategory22Screen字符選擇框,附帶左右軟鍵,使用場(chǎng)景示例:特殊字符選擇ShowCategory52ScreenShowCategory53ScreenShowCategory54ScreenShowCategory57ScreenShowCategory165ScreenPopup《MMI實(shí)例訓(xùn)練.pdf》勘誤傅貴《MMI實(shí)例訓(xùn)練.pdf》(共108頁)中有些是明顯的錯(cuò)誤,有些是因?yàn)檐浖姹旧?jí)而導(dǎo)致,在這里一并羅列出來,以便新員工查閱,避免無謂的時(shí)間浪費(fèi):72頁代碼15.4:I_MENUITEM_CENTER_ICON_Y應(yīng)為UI_MENUITEM_CENTER_ICON_Y;73頁代碼15.5,函數(shù)gui_set_fixed_list_menu_item_functions的參數(shù)數(shù)量不夠,這應(yīng)該是軟件版本的不一致所致,調(diào)整后的函數(shù)寫法如下: gui_set_fixed_list_menu_item_functions( &My_fixed_list_menu, gui_show_fixed_icontext_menuitem, //displaymenuitem gui_measure_fixed_icontext_menuitem, //measuremeuitem gui_highlight_fixed_icontext_menuitem, //highlight gui_remove_highlight_fixed_icontext_menuitem, //removehilghligh gui_hide_fixed_icontext_menuitem, //hidemeuitem resize_fixed_icontext_menuitem, //resizemeuitem gui_get_fixed_icontext_menuitem_flag );建議gui_show_fixed_icontext_menuitem和resize_fixed_icontext_menuitem兩個(gè)回調(diào)函數(shù)進(jìn)行重寫,否則15.5代碼可能執(zhí)行會(huì)報(bào)錯(cuò);86頁代碼18.1:disable_menu_shortcut_box_display=1;這行代碼可以去掉,因?yàn)檎也坏蕉x的地方;87頁代碼18.4:這段代碼應(yīng)該放在代碼18.3之前,否則執(zhí)行會(huì)出錯(cuò);91頁代碼19.2:這段代碼:gui_measure_string(MMI_fixed_icontext_list_menuitems[index].item_texts,&w,&h);建議改為gui_measure_string((UI_string_type)MMI_fixed_icontext_list_menuitems[index].item_texts,&w,&h);代碼:gui_print_bordered_text(MMI_fixed_icontext_list_menuitems[index].item_texts);建議改為:gui_print_bordered_text((UI_string_type)MMI_fixed_icontext_list_menuitems[index].item_texts);如果不做這些修改,可能在VC下可以編譯通過,tcc環(huán)境編譯不過;99頁代碼20.2:這段代碼應(yīng)該放在wgui_categories_enum.h中,而不是wgui_categories_defs.h中,這應(yīng)該是軟件版本的不一致所致

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論