亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法

文檔序號(hào):6357478閱讀:343來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種自定義桌面的實(shí)現(xiàn)方法,特別是涉及一種WinCE(微軟公司推出的小型設(shè)備操作系統(tǒng))平臺(tái)自定義桌面的實(shí)現(xiàn)方法。
背景技術(shù)
目前,由于AndroicKGoogle公司推出的移動(dòng)設(shè)備操作系統(tǒng))平臺(tái)的日趨流行,廣大消費(fèi)者已經(jīng)開(kāi)始逐漸適應(yīng)并喜愛(ài)上該平臺(tái)所提供的靈活多樣的桌面形式。在Android平臺(tái)下,桌面不再僅限于傳統(tǒng)的單頁(yè),而是可以隨著圖標(biāo)和控件數(shù)量的不斷增加而增加頁(yè)數(shù),并且相鄰的頁(yè)面之間可以靈活地拖動(dòng)翻頁(yè)。另外,用戶(hù)還可以根據(jù)自己的喜好自定義各個(gè)頁(yè)面上的圖標(biāo)和控件的放置位置,例如可以將較為常用的圖標(biāo)和控件拖放到第一個(gè)頁(yè)面上,并將使用頻率較低的圖標(biāo)和控件拖放到較后的頁(yè)面上等等。這種靈活多樣的桌面形式 無(wú)疑能夠極大地提升用戶(hù)對(duì)移動(dòng)設(shè)備的使用體驗(yàn)。然而,在基于WinCE平臺(tái)所開(kāi)發(fā)的移動(dòng)設(shè)備上,桌面仍然停留在最傳統(tǒng)的形式上僅有一個(gè)單一的桌面頁(yè)面,所有的圖標(biāo)和控件均顯示在該單一頁(yè)面上,并且每個(gè)圖標(biāo)和控件的位置均是無(wú)法移動(dòng)的。由此必然會(huì)導(dǎo)致以下問(wèn)題當(dāng)圖標(biāo)和控件的數(shù)量增多時(shí),由于單頁(yè)的限制,其顯示尺寸便不得不相應(yīng)縮小、同時(shí)圖標(biāo)和控件之間也會(huì)開(kāi)始變得擁擠,而若是設(shè)置多個(gè)頁(yè)面來(lái)顯示這些圖標(biāo)和控件,在現(xiàn)有的WinCE平臺(tái)下,多個(gè)頁(yè)面之間的切換翻頁(yè)又無(wú)法通過(guò)靈活的拖動(dòng)方式來(lái)實(shí)現(xiàn),因此無(wú)論如何都會(huì)影響到用戶(hù)的使用體驗(yàn)。這樣一來(lái),這種傳統(tǒng)的桌面形式顯然會(huì)影響到用戶(hù)對(duì)WinCE平臺(tái)的移動(dòng)設(shè)備的第一印象,從而嚴(yán)重地遮蔽了這些移動(dòng)設(shè)備的其它優(yōu)勢(shì)。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是為了克服現(xiàn)有技術(shù)中的WinCE平臺(tái)的移動(dòng)設(shè)備無(wú)法實(shí)現(xiàn)靈活的自定義桌面的缺陷,提供一種能夠?qū)崿F(xiàn)靈活的自定義桌面的WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法。本發(fā)明是通過(guò)下述技術(shù)方案來(lái)解決上述技術(shù)問(wèn)題的一種WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法,其特點(diǎn)在于,該方法包括一翻頁(yè)流程,該翻頁(yè)流程包括S11、鼠標(biāo)左鍵按下并點(diǎn)擊于一初始頁(yè)面的桌面上;S12、鼠標(biāo)從該初始頁(yè)面向一相鄰頁(yè)面移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)一預(yù)設(shè)間距,均在MemDC (內(nèi)存DC,DC為Device Context,是⑶I內(nèi)部的一個(gè)資料結(jié)構(gòu))上繪制桌面背景以及應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域的圖標(biāo)和控件,然后將MemDC上的畫(huà)面繪制到屏幕DC上,其中,該些圖標(biāo)和控件的相對(duì)位置始終不變、但在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新;S13、鼠標(biāo)左鍵抬起;S14、在步驟Sll與S13之間,若鼠標(biāo)移動(dòng)過(guò)的總距離超過(guò)屏幕顯示區(qū)域尺寸的一半和/或若鼠標(biāo)移動(dòng)的平均速度超過(guò)一預(yù)設(shè)速度,則不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控件的位置信息;否則,則將該初始頁(yè)面繪制到屏幕DC上。
較佳地,該方法還包括一圖標(biāo)拖放流程,該圖標(biāo)拖放流程包括S21、鼠標(biāo)左鍵按下并點(diǎn)擊于該初始頁(yè)面上的一圖標(biāo)上;S22、鼠標(biāo)在該初始頁(yè)面內(nèi)移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)該預(yù)設(shè)間距,均在MemDC上繪制桌面背景以及該初始頁(yè)面上的圖標(biāo)和控件,然后將MemDC上的畫(huà)面繪制到屏幕DC上,其中,該初始頁(yè)面上未被點(diǎn)擊的圖標(biāo)和控件的位置始終不變、但被點(diǎn)擊的該圖標(biāo)在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新;S23、鼠標(biāo)左鍵抬起;S24、判斷在鼠標(biāo)左鍵抬起的位置處是否有放置步驟S21中被點(diǎn)擊的該圖標(biāo)的空間,若有,則將該圖標(biāo)放置于鼠標(biāo)左鍵抬起的位置處,然后將當(dāng)前頁(yè)面繪制到屏幕DC上,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控 件的位置信息;若無(wú),則將該圖標(biāo)還原至步驟S21時(shí)的位置處,將該初始頁(yè)面繪制到屏幕DC上。其中,在步驟S22中,當(dāng)鼠標(biāo)將該圖標(biāo)的超過(guò)一半拖出該初始頁(yè)面并拖向一相鄰頁(yè)面時(shí),則不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,記錄當(dāng)前頁(yè)面,然后鼠標(biāo)繼續(xù)在該相鄰頁(yè)面內(nèi)移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)該預(yù)設(shè)間距,均在MemDC上繪制桌面背景、該相鄰頁(yè)面上的圖標(biāo)和控件以及被點(diǎn)擊的該圖標(biāo),然后將MemDC上的畫(huà)面繪制到屏幕DC上;其中,該相鄰頁(yè)面上的圖標(biāo)和控件的位置始終不變、但被點(diǎn)擊的該圖標(biāo)在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新。較佳地,該方法還包括一控件拖放流程,該控件拖放流程包括S31、鼠標(biāo)左鍵按下并點(diǎn)擊于該初始頁(yè)面上的一控件上;S32、鼠標(biāo)在該初始頁(yè)面內(nèi)移動(dòng),若該移動(dòng)會(huì)觸發(fā)該控件的OnMouseMove事件(與鼠標(biāo)在控件的顯示區(qū)域內(nèi)的動(dòng)作相關(guān)聯(lián)的事件),則不移動(dòng)該控件,至此結(jié)束該次控件拖放流程;若該移動(dòng)不會(huì)觸發(fā)該控件的OnMouseMove事件,則在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)該預(yù)設(shè)間距,均在MemDC上繪制桌面背景以及該初始頁(yè)面上的圖標(biāo)和控件,然后將MemDC上的畫(huà)面繪制到屏.DC上,其中,該初始頁(yè)面上未被點(diǎn)擊的圖標(biāo)和控件的位置始終不變、但被點(diǎn)擊的該控件在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新;
S33、鼠標(biāo)左鍵抬起;S34、判斷在鼠標(biāo)左鍵抬起的位置處是否有放置步驟S31中被點(diǎn)擊的該控件的空間,若有,則將該控件放置于鼠標(biāo)左鍵抬起的位置處,然后將當(dāng)前頁(yè)面繪制到屏幕DC上,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控件的位置信息;若無(wú),則將該控件還原至步驟S31時(shí)的位置處,將該初始頁(yè)面繪制到屏幕DC上。其中,在步驟S32中,當(dāng)鼠標(biāo)的移動(dòng)不會(huì)觸發(fā)被點(diǎn)擊的該控件的OnMouseMove事件、且當(dāng)鼠標(biāo)將該控件的超過(guò)一半拖出該初始頁(yè)面并拖向一相鄰頁(yè)面時(shí),則不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,記錄當(dāng)前頁(yè)面,然后鼠標(biāo)繼續(xù)在該相鄰頁(yè)面內(nèi)移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)該預(yù)設(shè)間距,均在MemDC上繪制桌面背景、該相鄰頁(yè)面上的圖標(biāo)和控件以及被點(diǎn)擊的該控件,然后將MemDC上的畫(huà)面繪制到屏幕DC上;其中,該相鄰頁(yè)面上的圖標(biāo)和控件的位置始終不變、但被點(diǎn)擊的該控件在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新。較佳地,該預(yù)設(shè)間距為5個(gè)像素點(diǎn)。本發(fā)明的積極進(jìn)步效果在于利用本發(fā)明便可以在WinCE平臺(tái)的移動(dòng)設(shè)備上實(shí)現(xiàn)靈活多樣的自定義桌面,從而極大地提升用戶(hù)對(duì)WinCE平臺(tái)的移動(dòng)設(shè)備的使用體驗(yàn)。


圖I為現(xiàn)有的桌面啟動(dòng)流程圖。
圖2為本發(fā)明中的翻頁(yè)流程圖。圖3為本發(fā)明中的圖標(biāo)拖放流程圖。圖4為本發(fā)明中的控件拖放流程圖。
具體實(shí)施例方式下面結(jié)合附圖給出本發(fā)明較佳實(shí)施例,以詳細(xì)說(shuō)明本發(fā)明的技術(shù)方案。在WinCE平臺(tái)的桌面上既可以有圖標(biāo)也可以有控件,此處的圖標(biāo)指的是應(yīng)用程序在桌面上的快捷方式,其呈現(xiàn)為靜態(tài)圖片的形式,而控件指的則是自身具備一定的動(dòng)態(tài)顯示效果的桌面插件,例如時(shí)鐘控件,其鐘面上的指針可以隨著時(shí)間推進(jìn),或者新聞控件,其顯示窗口內(nèi)的新聞條目可以在鼠標(biāo)的控制之下滾動(dòng)。
在WinCE平臺(tái)下,桌面的所有顯示信息,例如各個(gè)頁(yè)面的編號(hào)信息、每個(gè)頁(yè)面上的圖標(biāo)和控件的位置信息、圖標(biāo)和控件的顯示圖片的路徑信息以及顯示的文字信息等等,均需要記錄到相應(yīng)的注冊(cè)表項(xiàng)中。在桌面初始化時(shí),從注冊(cè)表讀取需要顯示的信息,并初始化一個(gè)容納顯示信息的容器ListView,把顯示信息傳遞給該容器來(lái)實(shí)現(xiàn)桌面的顯示。具體的桌面啟動(dòng)流程參見(jiàn)圖I所示步驟100,創(chuàng)建桌面窗口。步驟101,從注冊(cè)表讀取桌面圖標(biāo)信息,包括圖標(biāo)的位置,以及該圖標(biāo)調(diào)用的應(yīng)
用程序等等。步驟102,從注冊(cè)表讀取桌面控件信息,包括控件的位置,以及與該控件關(guān)聯(lián)的dll (動(dòng)態(tài)鏈接庫(kù))等等。步驟103,創(chuàng)建一個(gè)桌面子窗口容器ListView。步驟104,將讀取的桌面圖標(biāo)和控件信息傳遞給ListView保存。步驟105,ListView根據(jù)保存的信息初始化圖標(biāo)和控件在屏幕顯示區(qū)域中的顯示位置,以及加載控件的關(guān)聯(lián)dll。其中,例如,一頁(yè)的空間可以按照4行*5列排布,每個(gè)圖標(biāo)占一個(gè)格,而一個(gè)控件所占的格數(shù)則根據(jù)其高寬參數(shù)確定。步驟106,ListView根據(jù)初始化好的信息,把桌面背景、圖標(biāo)以及控件繪制出來(lái),至此桌面便啟動(dòng)完畢。當(dāng)桌面含有多個(gè)頁(yè)面時(shí),每個(gè)頁(yè)面的顯示過(guò)程均與上述過(guò)程完全類(lèi)似,故在下文中便不再展開(kāi)敘述。下面參考圖2所示對(duì)本發(fā)明的該WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法中的翻頁(yè)流程進(jìn)行描述。該翻頁(yè)流程包括以下步驟步驟200,鼠標(biāo)左鍵按下,并且點(diǎn)擊于一初始頁(yè)面的桌面上,即點(diǎn)擊于該初始頁(yè)面內(nèi)未被圖標(biāo)或控件所占用的區(qū)域處。步驟201,判斷鼠標(biāo)從該初始頁(yè)面向相鄰頁(yè)面移動(dòng)的距離是否超過(guò)一預(yù)設(shè)間距,例如超過(guò)5個(gè)像素點(diǎn),若未超過(guò)則認(rèn)為用戶(hù)移動(dòng)鼠標(biāo)的目的并不是希望實(shí)現(xiàn)翻頁(yè),至此終止該次翻頁(yè)流程,若超過(guò)則執(zhí)行步驟202。步驟202,根據(jù)移動(dòng)的距離大小,更新此時(shí)應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域中的圖標(biāo)和控件以及它們的位置信息,在MemDC上繪制桌面背景以及此時(shí)應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域的圖標(biāo)和控件,繪制完畢之后,再將MemDC上的畫(huà)面繪制到屏幕DC上。
步驟203,判斷鼠標(biāo)左鍵是否抬起,若還未抬起則再次執(zhí)行步驟201,若已經(jīng)抬起則執(zhí)行步驟204。步驟204,判斷在鼠標(biāo)左鍵按下直至抬起的這段時(shí)間內(nèi),鼠標(biāo)移動(dòng)經(jīng)過(guò)的總距離是否超過(guò)了屏幕顯示區(qū)域尺寸的一半,和/或,鼠標(biāo)移動(dòng)的平均速度是否超過(guò)了一預(yù)設(shè)速度,若滿(mǎn)足了上述條件則執(zhí)行步驟205,若不滿(mǎn)足上述條件則執(zhí)行步驟206。其中,該預(yù)設(shè)速度可以由設(shè)計(jì)人員酌情設(shè)定,此處不做具體限定。步驟205,不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,更新當(dāng)前顯示的這些圖標(biāo)和控件的位置信息,并記錄當(dāng)前顯示的該相鄰頁(yè)面。至此,便完成了從該初始頁(yè)面至該相鄰頁(yè)面的翻頁(yè)流程。步驟206,認(rèn)為用戶(hù)移動(dòng)鼠標(biāo)的目的并不是希望實(shí)現(xiàn)翻頁(yè),因此將顯示的畫(huà)面還原為該初始頁(yè)面,然后終止該次翻頁(yè)流程。在每次執(zhí)行步驟202時(shí)在屏幕DC上所顯示出來(lái)的各個(gè)畫(huà)面中,所有的圖標(biāo)和控件、之間的相對(duì)位置均是始終保持不變的,但它們?cè)谄聊伙@示區(qū)域中的絕對(duì)位置則會(huì)隨著鼠標(biāo)的不斷移動(dòng)而在畫(huà)面與畫(huà)面之間發(fā)生更新。下面參考圖3所示對(duì)本發(fā)明的該WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法中的圖標(biāo)拖放流程進(jìn)行描述。該圖標(biāo)拖放流程包括以下步驟步驟300,鼠標(biāo)左鍵按下,并點(diǎn)擊于一初始頁(yè)面上的任一圖標(biāo)上。步驟301,判斷鼠標(biāo)的移動(dòng)距離是否超過(guò)一預(yù)設(shè)間距,例如可以將此處的該預(yù)設(shè)間距同樣設(shè)定為5個(gè)像素點(diǎn),若未超過(guò)則認(rèn)為用戶(hù)移動(dòng)鼠標(biāo)的目的并不是希望實(shí)現(xiàn)圖標(biāo)拖放,至此終止該次圖標(biāo)拖放流程,若超過(guò)則執(zhí)行步驟302。步驟302,判斷該圖標(biāo)在鼠標(biāo)的拖動(dòng)下是否超出了該初始頁(yè)面的顯示區(qū)域,在實(shí)際軟件設(shè)計(jì)中可以采用判斷該圖標(biāo)的顯示圖片是否已經(jīng)有超過(guò)一半的面積超出了屏幕顯示區(qū)域之外,若已經(jīng)超出則執(zhí)行步驟303,若還未超出則執(zhí)行步驟304。步驟303,認(rèn)為用戶(hù)希望將該圖標(biāo)拖放進(jìn)一相鄰頁(yè)面,因此執(zhí)行翻頁(yè),即不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,然后記錄當(dāng)前顯示的頁(yè)面。步驟304,根據(jù)鼠標(biāo)在當(dāng)前頁(yè)面中移動(dòng)的距離大小,更新此時(shí)應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域中的圖標(biāo)和控件以及它們的位置信息,在MemDC上繪制桌面背景以及此時(shí)應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域的圖標(biāo)和控件,繪制完畢之后,再將MemDC上的畫(huà)面繪制到屏幕DC上。步驟305,判斷鼠標(biāo)左鍵是否抬起,若還未抬起則再次執(zhí)行步驟301,若已經(jīng)抬起則執(zhí)行步驟306。步驟306,判斷當(dāng)前頁(yè)面中在鼠標(biāo)左鍵抬起的位置處是否有放置被拖動(dòng)的該圖標(biāo)的空間,若有則執(zhí)行步驟307,若無(wú)則執(zhí)行步驟308。步驟307,將被拖動(dòng)的該圖標(biāo)放置于鼠標(biāo)左鍵抬起的位置處,然后將當(dāng)前頁(yè)面繪制到屏幕DC上,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控件的位置信息。至此便完成了該次圖標(biāo)拖放流程。步驟308,將被拖動(dòng)的該圖標(biāo)還原至步驟300時(shí)的初始位置,將該初始頁(yè)面繪制到屏幕DC上,至此終止該次圖標(biāo)拖放流程。在每次執(zhí)行步驟304時(shí)在屏幕DC上所顯示出來(lái)的各個(gè)畫(huà)面中,在翻頁(yè)之前,該初始頁(yè)面上未被鼠標(biāo)點(diǎn)擊的圖標(biāo)和控件的位置均始終保持不變,而僅有被鼠標(biāo)點(diǎn)擊的該圖標(biāo)會(huì)被鼠標(biāo)拖動(dòng)從而在屏幕顯示區(qū)域中發(fā)生位置更新;而在翻頁(yè)之后,在該相鄰頁(yè)面上的所有原有圖標(biāo)和控件的位置均始終保持不變,而僅有被鼠標(biāo)點(diǎn)擊的該圖標(biāo)會(huì)被鼠標(biāo)拖動(dòng)從而在屏幕顯示區(qū)域中發(fā)生位置更新。本發(fā)明的該WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法中的控件拖放流程的主體流程與上述的圖標(biāo)拖放流程完全類(lèi)似,即步驟400-408與上述的步驟300-308完全相同,區(qū)別僅在于在步驟401與402之間增加了步驟409。該控件拖放流程包括步驟400,鼠標(biāo)左鍵按下,并點(diǎn)擊于一初始頁(yè)面上的任一控件上。步驟401,判斷鼠標(biāo)的移動(dòng)距離是否超過(guò)一預(yù)設(shè)間距,例如超過(guò)5個(gè)像素點(diǎn),若未超過(guò)則認(rèn)為用戶(hù)移動(dòng)鼠標(biāo)的目的并不是希望實(shí)現(xiàn)控件拖放,至此終止該次控件拖放流程,若超過(guò)則執(zhí)行步驟409。
步驟409,判斷鼠標(biāo)的動(dòng)作是否會(huì)觸發(fā)被點(diǎn)擊的該控件的OnMouseMove事件,若會(huì)觸發(fā),則認(rèn)為用戶(hù)移動(dòng)鼠標(biāo)的目的并不是希望拖放控件,而是希望對(duì)該控件的顯示效果進(jìn)行操作,因此終止該次控件拖放流程,而如果不會(huì)觸發(fā),則繼續(xù)執(zhí)行步驟402。例如在新聞控件中,可以將鼠標(biāo)的點(diǎn)擊并快速滑動(dòng)與滾動(dòng)至下一條新聞內(nèi)容的動(dòng)作相關(guān)聯(lián),而僅有在鼠標(biāo)長(zhǎng)按控件之后再開(kāi)始移動(dòng)才能夠被識(shí)別為用戶(hù)希望拖動(dòng)該控件。步驟402,判斷該控件在鼠標(biāo)的拖動(dòng)下是否超出了該初始頁(yè)面的顯示區(qū)域,在實(shí)際軟件設(shè)計(jì)中可以采用判斷該控件的顯示圖片是否已經(jīng)有超過(guò)一半的面積超出了屏幕顯示區(qū)域之外,若已經(jīng)超出則執(zhí)行步驟403,若還未超出則執(zhí)行步驟404。步驟403,認(rèn)為用戶(hù)希望將該控件拖放進(jìn)一相鄰頁(yè)面,因此執(zhí)行翻頁(yè),即不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,然后記錄當(dāng)前顯示的頁(yè)面。步驟404,根據(jù)鼠標(biāo)在當(dāng)前頁(yè)面中移動(dòng)的距離大小,更新此時(shí)應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域中的圖標(biāo)和控件以及它們的位置信息,在MemDC上繪制桌面背景以及此時(shí)應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域的圖標(biāo)和控件,繪制完畢之后,再將MemDC上的畫(huà)面繪制到屏幕DC上。步驟405,判斷鼠標(biāo)左鍵是否抬起,若還未抬起則再次執(zhí)行步驟401,若已經(jīng)抬起則執(zhí)行步驟406。步驟406,判斷當(dāng)前頁(yè)面中在鼠標(biāo)左鍵抬起的位置處是否有放置被拖動(dòng)的該控件的空間,若有則執(zhí)行步驟407,若無(wú)則執(zhí)行步驟408。步驟407,將被拖動(dòng)的該控件放置于鼠標(biāo)左鍵抬起的位置處,然后將當(dāng)前頁(yè)面繪制到屏幕DC上,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控件的位置信息。至此便完成了該次控件拖放流程。步驟408,將被拖動(dòng)的該控件還原至步驟400時(shí)的初始位置,將該初始頁(yè)面繪制到屏幕DC上,至此終止該次控件拖放流程。在每次執(zhí)行步驟404時(shí)在屏幕DC上所顯示出來(lái)的各個(gè)畫(huà)面中,在翻頁(yè)之前,該初始頁(yè)面上未被鼠標(biāo)點(diǎn)擊的圖標(biāo)和控件的位置均始終保持不變,而僅有被鼠標(biāo)點(diǎn)擊的該控件會(huì)被鼠標(biāo)拖動(dòng)從而在屏幕顯示區(qū)域中發(fā)生位置更新;而在翻頁(yè)之后,在該相鄰頁(yè)面上的所有原有圖標(biāo)和控件的位置均始終保持不變,而僅有被鼠標(biāo)點(diǎn)擊的該控件會(huì)被鼠標(biāo)拖動(dòng)從而在屏幕顯示區(qū)域中發(fā)生位置更新。
綜上所述,本發(fā)明在WinCE平臺(tái)下實(shí)現(xiàn)了靈活的自定義桌面,由此將能夠極大地提升用戶(hù)對(duì)WinCE平臺(tái)的移動(dòng)設(shè)備的使用體驗(yàn)。雖然以上描述了本發(fā)明的具體實(shí)施方式
,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這些 僅是舉例說(shuō)明,本發(fā)明的保護(hù)范圍是由所附權(quán)利要求書(shū)限定的。本領(lǐng)域的技術(shù)人員在不背離本發(fā)明的原理和實(shí)質(zhì)的前提下,可以對(duì)這些實(shí)施方式做出多種變更或修改,但這些變更和修改均落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法,其特征在于,該方法包括一翻頁(yè)流程,該翻頁(yè)流程包括 S11、鼠標(biāo)左鍵按下并點(diǎn)擊于一初始頁(yè)面的桌面上; S12、鼠標(biāo)從該初始頁(yè)面向一相鄰頁(yè)面移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)一預(yù)設(shè)間距,均在MemDC上繪制桌面背景以及應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域的圖標(biāo)和控件,然后將MemDC上的畫(huà)面繪制到屏幕DC上,其中,該些圖標(biāo)和控件的相對(duì)位置始終不變、但在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新; S13、鼠標(biāo)左鍵抬起; S14、在步驟Sll與S13之間,若鼠標(biāo)移動(dòng)過(guò)的總距離超過(guò)屏幕顯示區(qū)域尺寸的一半和/或若鼠標(biāo)移動(dòng)的平均速度超過(guò)一預(yù)設(shè)速度,則不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控件的位置信息;否則,則將該初始頁(yè)面繪制到屏幕DC上。
2.如權(quán)利要求I所述的WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法,其特征在于,該方法還包括一圖標(biāo)拖放流程,該圖標(biāo)拖放流程包括 S21、鼠標(biāo)左鍵按下并點(diǎn)擊于該初始頁(yè)面上的一圖標(biāo)上; S22、鼠標(biāo)在該初始頁(yè)面內(nèi)移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)該預(yù)設(shè)間距,均在MemDC上繪制桌面背景以及該初始頁(yè)面上的圖標(biāo)和控件,然后將MemDC上的畫(huà)面繪制到屏幕DC上,其中,該初始頁(yè)面上未被點(diǎn)擊的圖標(biāo)和控件的位置始終不變、但被點(diǎn)擊的該圖標(biāo)在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新; S23、鼠標(biāo)左鍵抬起; S24、判斷在鼠標(biāo)左鍵抬起的位置處是否有放置步驟S21中被點(diǎn)擊的該圖標(biāo)的空間,若有,則將該圖標(biāo)放置于鼠標(biāo)左鍵抬起的位置處,然后將當(dāng)前頁(yè)面繪制到屏幕DC上,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控件的位置信息;若無(wú),則將該圖標(biāo)還原至步驟S21時(shí)的位置處,將該初始頁(yè)面繪制到屏幕DC上。
3.如權(quán)利要求2所述的WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法,其特征在于,在步驟S22中,當(dāng)鼠標(biāo)將該圖標(biāo)的超過(guò)一半拖出該初始頁(yè)面并拖向一相鄰頁(yè)面時(shí),則不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,記錄當(dāng)前頁(yè)面,然后鼠標(biāo)繼續(xù)在該相鄰頁(yè)面內(nèi)移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)該預(yù)設(shè)間距,均在MemDC上繪制桌面背景、該相鄰頁(yè)面上的圖標(biāo)和控件以及被點(diǎn)擊的該圖標(biāo),然后將MemDC上的畫(huà)面繪制到屏幕DC上;其中,該相鄰頁(yè)面上的圖標(biāo)和控件的位置始終不變、但被點(diǎn)擊的該圖標(biāo)在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新。
4.如權(quán)利要求I所述的WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法,其特征在于,該方法還包括一控件拖放流程,該控件拖放流程包括 S31、鼠標(biāo)左鍵按下并點(diǎn)擊于該初始頁(yè)面上的一控件上; S32、鼠標(biāo)在該初始頁(yè)面內(nèi)移動(dòng),若該移動(dòng)會(huì)觸發(fā)該控件的OnMouseMove事件,則不移動(dòng)該控件,至此結(jié)束該次控件拖放流程;若該移動(dòng)不會(huì)觸發(fā)該控件的OnMouseMove事件,貝U在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)該預(yù)設(shè)間距,均在MemDC上繪制桌面背景以及該初始頁(yè)面上的圖標(biāo)和控件,然后將MemDC上的畫(huà)面繪制到屏幕DC上,其中,該初始頁(yè)面上未被點(diǎn)擊的圖標(biāo)和控件的位置始終不變、但被點(diǎn)擊的該控件在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新; S33、鼠標(biāo)左鍵抬起; S34、判斷在鼠標(biāo)左鍵抬起的位置處是否有放置步驟S31中被點(diǎn)擊的該控件的空間,若有,則將該控件放置于鼠標(biāo)左鍵抬起的位置處,然后將當(dāng)前頁(yè)面繪制到屏幕DC上,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控件的位置信息;若無(wú),則將該控件還原至步驟S31時(shí)的位置處,將該初始頁(yè)面繪制到屏 幕DC上。
5.如權(quán)利要求4所述的WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法,其特征在于,在步驟S32中,當(dāng)鼠標(biāo)的移動(dòng)不會(huì)觸發(fā)被點(diǎn)擊的該控件的OnMouseMove事件、且當(dāng)鼠標(biāo)將該控件的超過(guò)一半拖出該初始頁(yè)面并拖向一相鄰頁(yè)面時(shí),則不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至屏幕顯示區(qū)域顯示出該相鄰頁(yè)面,記錄當(dāng)前頁(yè)面,然后鼠標(biāo)繼續(xù)在該相鄰頁(yè)面內(nèi)移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)該預(yù)設(shè)間距,均在MemDC上繪制桌面背景、該相鄰頁(yè)面上的圖標(biāo)和控件以及被點(diǎn)擊的該控件,然后將MemDC上的畫(huà)面繪制到屏幕DC上;其中,該相鄰頁(yè)面上的圖標(biāo)和控件的位置始終不變、但被點(diǎn)擊的該控件在屏幕顯示區(qū)域中的位置隨鼠標(biāo)移動(dòng)而更新。
6.如權(quán)利要求1-5中任意一項(xiàng)所述的WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法,其特征在于,該預(yù)設(shè)間距為5個(gè)像素點(diǎn)。
全文摘要
本發(fā)明公開(kāi)了一種WinCE平臺(tái)自定義桌面的實(shí)現(xiàn)方法,該方法包括S11、鼠標(biāo)左鍵按下;S12、鼠標(biāo)從該初始頁(yè)面向一相鄰頁(yè)面移動(dòng),在該移動(dòng)過(guò)程中,鼠標(biāo)每移動(dòng)過(guò)一預(yù)設(shè)間距,均在MemDC上繪制桌面背景以及應(yīng)當(dāng)進(jìn)入屏幕顯示區(qū)域的圖標(biāo)和控件,然后將MemDC上的畫(huà)面繪制到屏幕DC上;S13、鼠標(biāo)左鍵抬起;S14、若滿(mǎn)足翻頁(yè)條件,則不斷地繪制從該初始頁(yè)面向該相鄰頁(yè)面翻頁(yè)的過(guò)程畫(huà)面,直至顯示出該相鄰頁(yè)面,記錄當(dāng)前頁(yè)面以及當(dāng)前顯示的圖標(biāo)和控件的位置信息;否則,則將該初始頁(yè)面繪制到屏幕DC上。本發(fā)明在WinCE平臺(tái)下實(shí)現(xiàn)了靈活的自定義桌面,由此將能夠極大地提升用戶(hù)對(duì)WinCE平臺(tái)的移動(dòng)設(shè)備的使用體驗(yàn)。
文檔編號(hào)G06F3/048GK102736901SQ20111008299
公開(kāi)日2012年10月17日 申請(qǐng)日期2011年4月1日 優(yōu)先權(quán)日2011年4月1日
發(fā)明者丁月英 申請(qǐng)人:希姆通信息技術(shù)(上海)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1