symbian入門系列- document對(duì)象分析

symbian入門系列- document對(duì)象分析

ID:9670014

大?。?9.00 KB

頁數(shù):2頁

時(shí)間:2018-05-05

symbian入門系列- document對(duì)象分析_第1頁
symbian入門系列- document對(duì)象分析_第2頁
資源描述:

《symbian入門系列- document對(duì)象分析》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、symbian入門系列:document對(duì)象分析  Document分析「繼承關(guān)系」  CAknDocument->CEikDocument->CApaDocument「主要作用」  1)是app的datamodel.2)在基于文件的app中,ument提供了對(duì)于文件的訪問(store/restore)  3)負(fù)責(zé)創(chuàng)建AppUI,從而可以提供修改ument的基礎(chǔ),CreateAppUiL()負(fù)責(zé)創(chuàng)建application的appUI對(duì)象?! ?shí)際上,ument起到了一個(gè)中間層(intermediatelayer)的作用。負(fù)責(zé)在

2、appui和appmodel(engine)以及file之間建立聯(lián)系?!  窤ppUI」  -----------------------『Document』  

3、「model」<->「file」  「Document的管理」  1)OpenFileL()  這個(gè)函數(shù)的功能和app的資源文件中的TBUF段(segment)密切相關(guān)?! ESOURCETBUFr_default_ument_name{buf=;}這個(gè)segment決定了application關(guān)聯(lián)的文件名。這里的文件名連同路徑就作為參數(shù)傳遞給了OpenFileL

4、()函數(shù)。這就使得application在啟動(dòng)的時(shí)候能夠調(diào)用缺省的file,如果這個(gè)segment是空的,那么缺省的ument的名字和application的basename相同。這里需要注意的是series60只允許存在一個(gè)缺省的file.這個(gè)函數(shù)的返回值是CFileStore*,這是返回給applicationframeep;aFilename)和fileserversession參數(shù)(RFsaFs)應(yīng)當(dāng)是由applicationframeentL()  這個(gè)函數(shù)是由applicationframeentfile.「注?」  這個(gè)函數(shù)

5、是不是在資源文件沒有文件名的情況下調(diào)用的?如果是這樣,那么這個(gè)函數(shù)應(yīng)當(dāng)在OpenFileL()  之前被調(diào)用?  「解釋」  我在Document函數(shù)里面重載了函數(shù)NeentL()和OpenFileL(),并分別加上了斷點(diǎn)跟蹤調(diào)試。發(fā)現(xiàn):(#)如果在資源文件中沒有文件名的話,那么這兩個(gè)函數(shù)都不執(zhí)行?! 。?)如果在資源文件存在文件名的話,那么首先執(zhí)行的是OpenFileL()函數(shù),但是這個(gè)時(shí)候的aOpen參數(shù)值是0,表明文件不存在或者文件沒有打開。那么接下來調(diào)用NeentL(),這個(gè)函數(shù)負(fù)責(zé)創(chuàng)建一個(gè)新的umentfile.接下來會(huì)調(diào)用um

6、ent類的StoreL()函數(shù)?! 。?)在晚上上述的步驟之后,再重新運(yùn)行這個(gè)app,那么啟動(dòng)的時(shí)候會(huì)調(diào)用OpenFileL()函數(shù),這個(gè)時(shí)候aOpen參數(shù)值是1,表明文件存在,那么接下來就調(diào)用ReStoreL()函數(shù)對(duì)文件進(jìn)行讀寫?!  笇?duì)相關(guān)file的管理」  ument類提供了兩個(gè)函數(shù)對(duì)文件的mode訪問和修改。AppFileMode()和SetAppFileMode()。  「對(duì)相關(guān)file的訪問存取」  ument類提供了如下函數(shù)對(duì)file進(jìn)行訪問:SaveL();StoreL();RestoreL();ExternalizeL

7、();PrintL();其中SaveL()會(huì)在app退出的時(shí)候被調(diào)用,用于保存app相關(guān)的數(shù)據(jù)到file中去。  SaveL()>StoreL();而RestoreL()是在app啟動(dòng)的時(shí)候調(diào)用的,負(fù)責(zé)把文件的信息保存在ument相關(guān)的model(engine)中去?!  妇唧w的UI/engine的結(jié)構(gòu)以后在仔細(xì)的研究一下:-)」——感謝閱讀這篇文章,..,

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。