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

一種同時縮放多個wpf窗體的方法和裝置的制作方法

文檔序號:6443263閱讀:303來源:國知局
專利名稱:一種同時縮放多個wpf窗體的方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及交互顯示領(lǐng)域,具體涉及一種同時縮放多個WPF窗體的方法和裝置。
背景技術(shù)
大部分WPF (Windows Presentation Foundation,windows 圖形界面處理)程序在打開新窗體時都是瞬間把窗體顯示在屏幕上、在關(guān)閉窗體,特別是多個窗體時也是窗體瞬間消失,沒有任何動畫效果,讓用戶感覺非常突兀,交互顯示非常不友好。目前,使得窗體在關(guān)閉或打開時產(chǎn)生動畫效果的一般做法是直接對WPF窗體的大小位置進(jìn)行動畫變化,使其隨著時間軸進(jìn)行變化;但是同時打開或者關(guān)閉多個WPF窗口時, 進(jìn)行動畫會出現(xiàn)窗體變化不一致的現(xiàn)象,降低用戶體驗(yàn);動畫效率低,占用系統(tǒng)資源嚴(yán)重。

發(fā)明內(nèi)容
本發(fā)明提供一種同時縮放多窗體的方法,可以消除進(jìn)行窗體縮放動畫時,各窗體變化不一致的現(xiàn)象,提高用戶體驗(yàn)和動畫效率,提高系統(tǒng)資源利用率。為達(dá)到上述目的,采用的方案一種同時縮放多個WPF窗體的方法,包括步驟新建圖像縮放控件,將所述圖像縮放控件的父級設(shè)置為WPF應(yīng)用程序;獲取將WPF窗體相對于屏幕平面坐標(biāo)系的位置轉(zhuǎn)換到WPF窗體相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的位置的轉(zhuǎn)換關(guān)系;獲取鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo);將鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)、預(yù)定的各WPF窗體相對于屏幕的位置依據(jù)所述轉(zhuǎn)換關(guān)系進(jìn)行轉(zhuǎn)換;根據(jù)轉(zhuǎn)換結(jié)果確定圖像縮放控件需顯示的范圍;當(dāng)WPF窗體為顯示狀態(tài)時,將該WPF窗體渲染成圖像;以及將圖像放入圖像縮放控件;根據(jù)轉(zhuǎn)換結(jié)果初始化圖像縮放的起始位置和結(jié)束位置;以及初始化圖像縮放控件的動畫時間間隔;根據(jù)所述圖像縮放的起始位置、結(jié)束位置動畫時間間隔在所述圖像縮放控件需顯示的范圍內(nèi)進(jìn)行圖像縮放。本發(fā)明方法通過圖像縮放控件使得打開或者關(guān)閉WPF窗體時產(chǎn)生動畫效果。在動畫開始前,新建圖像縮放控件并將其父級設(shè)置為WPF應(yīng)用程序;然后將WPF窗體對于屏幕的平面坐標(biāo)系轉(zhuǎn)換到WPF窗體對于WPF應(yīng)用軟件主窗體的平面坐標(biāo)系,由此根據(jù)預(yù)設(shè)的WPF 窗體對于屏幕的位置,可以確定圖像縮放控件需顯示的范圍;將WPF窗體渲染成圖像放入圖像縮放控制;根據(jù)坐標(biāo)轉(zhuǎn)化后的鼠標(biāo)點(diǎn)擊位置和預(yù)定的WPF窗體對于屏幕的位置定義圖像縮放的起始位置和結(jié)束位置;再定義動畫時間間隔;然后進(jìn)行打開或者關(guān)閉WPF窗體的動畫效果,可以消除進(jìn)行窗體縮放動畫時,各窗體變化不一致的現(xiàn)象,提高用戶體驗(yàn)和動畫效率,提高系統(tǒng)資源利用率。本發(fā)明提供一種同時縮放多窗體的裝置,可以消除進(jìn)行窗體縮放動畫時,各窗體變化不一致的現(xiàn)象,提高用戶體驗(yàn)和動畫效率,提高系統(tǒng)資源利用率。為達(dá)到上述目的,采用的方案一種同時縮放多個WPF窗體的裝置,包括控件創(chuàng)建單元,用于新建圖像縮放控件,將所述圖像縮放控件的父級設(shè)置為WPF 應(yīng)用程序;第一獲取單元,用于獲取將WPF窗體相對于屏幕平面坐標(biāo)系的位置轉(zhuǎn)換到WPF窗體相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的位置的轉(zhuǎn)換關(guān)系;第二獲取單元,用于獲取鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo);坐標(biāo)轉(zhuǎn)換單元,用于將鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)、預(yù)定的各WPF窗體相對于屏幕的位置、高度和寬度依據(jù)所述轉(zhuǎn)換關(guān)系進(jìn)行轉(zhuǎn)換;控件顯示內(nèi)容確定單元,用于根據(jù)轉(zhuǎn)換結(jié)果確定圖像縮放控件需顯示的范圍;WPF窗體渲染單元,用于獲取WPF窗體狀態(tài),當(dāng)WPF窗體為顯示狀態(tài)時,將該WPF窗體渲染成圖像;以及將圖像放入圖像縮放控件;初始化單元,用于根據(jù)轉(zhuǎn)換結(jié)果初始化圖像縮放的起始位置和結(jié)束位置;以及初始化圖像縮放控件的動畫時間間隔;圖像縮放單元,用于根據(jù)所述圖像縮放的起始位置、結(jié)束位置動畫時間間隔在所述圖像縮放控件需顯示的范圍內(nèi)進(jìn)行圖像縮放。本發(fā)明裝置通過圖像縮放控件使得打開或者關(guān)閉WPF窗體時產(chǎn)生動畫效果。在動畫開始前,新建圖像縮放控件并將其父級設(shè)置為WPF應(yīng)用程序;然后將WPF窗體對于屏幕的平面坐標(biāo)系轉(zhuǎn)換到WPF窗體對于WPF應(yīng)用軟件主窗體的平面坐標(biāo)系,由此根據(jù)預(yù)設(shè)的WPF 窗體對于屏幕的位置,可以確定圖像縮放控件需顯示的范圍;將WPF窗體渲染成圖像放入圖像縮放控制;根據(jù)坐標(biāo)轉(zhuǎn)化后的鼠標(biāo)點(diǎn)擊位置和預(yù)定的WPF窗體對于屏幕的位置定義圖像縮放的起始位置和結(jié)束位置;再定義動畫時間間隔;然后進(jìn)行打開或者關(guān)閉WPF窗體的動畫效果,可以消除進(jìn)行窗體縮放動畫時,各窗體變化不一致的現(xiàn)象,提高用戶體驗(yàn)和動畫效率,提高系統(tǒng)資源利用率。


圖I是本發(fā)明方法的一個實(shí)施例流程圖;圖2是本發(fā)明裝置的一個結(jié)構(gòu)示意圖;圖3是本發(fā)明中確定縮放控件顯示范圍的示意圖。
具體實(shí)施例方式為便于理解,下面結(jié)合附圖進(jìn)行闡述。本發(fā)明提出一種同時縮放多個WPF窗體的方法,請參考圖1,包括步驟101、新建圖像縮放控件;新建圖像縮放控件,將圖像縮放控件的父級設(shè)置為WPF應(yīng)用程序。102、獲取屏幕坐標(biāo)系到WPF應(yīng)用程序坐標(biāo)的轉(zhuǎn)換關(guān)系;
獲取將WPF窗體相對于屏幕平面坐標(biāo)系的位置轉(zhuǎn)換到WPF窗體相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的位置的轉(zhuǎn)換關(guān)系。作為一種具體實(shí)時方式,可采用如下步驟獲取鼠標(biāo)光標(biāo)相對于屏幕平面坐標(biāo)系的坐標(biāo)以及該鼠標(biāo)光標(biāo)相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的坐標(biāo);將鼠標(biāo)光標(biāo)相對于屏幕的坐標(biāo)與鼠標(biāo)光標(biāo)相對于WPF應(yīng)用程序的坐標(biāo)的比值作為轉(zhuǎn)換關(guān)系。103、獲取鼠標(biāo)點(diǎn)擊位置在屏幕坐標(biāo)系的坐標(biāo);104、進(jìn)行坐標(biāo)轉(zhuǎn)換;將鼠標(biāo)點(diǎn)擊位置相對于屏幕平面坐標(biāo)系的坐標(biāo)、預(yù)定的各WPF窗體相對于屏幕平面坐標(biāo)系的位置依據(jù)步驟102中的轉(zhuǎn)換關(guān)系進(jìn)行轉(zhuǎn)換。105、根據(jù)轉(zhuǎn)換結(jié)果確定圖像縮放控件顯示范圍;106、將WPF窗體渲染成圖像放入圖像縮放控件;當(dāng)WPF窗體為顯示狀態(tài)時,將該WPF窗體渲染成圖像;以及將圖像放入圖像縮放控件。107、初始化控件動畫的起始位置、結(jié)束位置和時間間隔;根據(jù)轉(zhuǎn)換結(jié)果初始化圖像縮放的起始位置和結(jié)束位置;以及初始化圖像縮放控件的動畫時間間隔。作為一種具體實(shí)時方式,可采用如下步驟當(dāng)打開WPF窗體時,將轉(zhuǎn)換后的鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)初始化為圖像縮放的起始位置,將轉(zhuǎn)換后的預(yù)定的各WPF窗體相對于屏幕的位置初始化為圖像縮放的結(jié)束位置;當(dāng)關(guān)閉WPF窗體時,從轉(zhuǎn)化后預(yù)定的各WPF窗體相對于屏幕的位置中,獲取離WPF 應(yīng)用程序主窗體平面坐標(biāo)系原點(diǎn)最近的橫坐標(biāo)以及最近的縱坐標(biāo),將該最近的橫坐標(biāo)以及最近的縱坐標(biāo)初始化為圖像縮放的起始位置,將轉(zhuǎn)換后的鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)初始化為圖像縮放的結(jié)束位置。108、根據(jù)起始位置、結(jié)束位置、時間間隔和顯示范圍,進(jìn)行圖像縮放。根據(jù)圖像縮放的起始位置、結(jié)束位置和動畫時間間隔在圖像縮放控件需顯示的范圍內(nèi)進(jìn)行圖像縮放。本發(fā)明方法通過圖像縮放控件使得打開或者關(guān)閉WPF窗體時產(chǎn)生動畫效果。在動畫開始前,新建圖像縮放控件并將其父級設(shè)置為WPF應(yīng)用程序;然后將WPF窗體對于屏幕的平面坐標(biāo)系轉(zhuǎn)換到WPF窗體對于WPF應(yīng)用軟件主窗體的平面坐標(biāo)系,由此根據(jù)預(yù)設(shè)的WPF 窗體對于屏幕的位置,可以確定圖像縮放控件需顯示的范圍;將WPF窗體渲染成圖像放入圖像縮放控制;根據(jù)坐標(biāo)轉(zhuǎn)化后的鼠標(biāo)點(diǎn)擊位置和預(yù)定的WPF窗體對于屏幕的位置定義圖像縮放的起始位置和結(jié)束位置;再定義動畫時間間隔;然后進(jìn)行打開或者關(guān)閉WPF窗體的動畫效果,可以消除進(jìn)行窗體縮放動畫時,各窗體變化不一致的現(xiàn)象,提高用戶體驗(yàn)和動畫效率,提高系統(tǒng)資源利用率。其中,步驟105包括從轉(zhuǎn)化后預(yù)定的各WPF窗體相對于屏幕的位置中,獲取離WPF應(yīng)用程序主窗體平面坐標(biāo)系原點(diǎn)最遠(yuǎn)的橫坐標(biāo)、最近的橫坐標(biāo)、最遠(yuǎn)的縱坐標(biāo)以及最近的縱坐標(biāo),以最遠(yuǎn)橫坐標(biāo)減去最近橫坐標(biāo)的值作為所述圖像縮放控件需顯示的范圍的寬度;以最遠(yuǎn)縱坐標(biāo)減去最近縱坐標(biāo)的值作為所述圖像縮放控件需顯示的范圍的高度。具體的,建立如圖3所示的屏幕平面坐標(biāo)系,包括三個WPF窗體(1、2和3)離坐標(biāo)系原點(diǎn)最近的橫坐標(biāo)是A,最遠(yuǎn)的橫坐標(biāo)是B,最遠(yuǎn)的縱坐標(biāo)是H,最近的縱坐標(biāo)是G,由此可知,在屏幕上,各WPF窗體代表的區(qū)域?yàn)镃DEF所示,再將CDEF代表的范圍轉(zhuǎn)換至WPF應(yīng)用程序主窗體的平面坐標(biāo)系,即為縮放控件需顯示范圍。為了使得圖像縮放有更好的視覺效果,在步驟107中進(jìn)行圖像縮放初始化時,還包括初始化動畫時的透明度。打開WPF窗體時,設(shè)置透明度從O至I漸變;關(guān)閉WPF窗體時,設(shè)置透明度從I至O漸變,其中,O表示完全透明,I表示不透明。為了消除關(guān)閉窗體時,出現(xiàn)的屏幕閃爍狀況,可在進(jìn)行圖像縮放前,設(shè)置隱藏WPF 窗體的時間間隔,隱藏WPF窗體的時間間隔小于動畫時間間隔。為了消除在動畫開始時,屏幕出現(xiàn)閃爍的狀況,可在進(jìn)行打開窗體的圖像縮放前, 將需要渲染成圖像的WPF窗體設(shè)置在屏幕顯示區(qū)域外。在106步驟中,可將圖像按照渲染的先后順序放入圖像縮放控件,方便圖像縮放控件的顯示。請參考圖2,一種同時縮放多個WPF窗體的裝置,包括控件創(chuàng)建單元Tl,用于新建圖像縮放控件,將圖像縮放控件的父級設(shè)置為WPF應(yīng)用程序;第一獲取單元T2,用于獲取將WPF窗體相對于屏幕平面坐標(biāo)系的位置轉(zhuǎn)換到WPF 窗體相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的位置的轉(zhuǎn)換關(guān)系;第二獲取單元T3,用于獲取鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo);坐標(biāo)轉(zhuǎn)換單元T4,用于將鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)、預(yù)定的各WPF窗體相對于屏幕的位置依據(jù)上述轉(zhuǎn)換關(guān)系進(jìn)行轉(zhuǎn)換;控件顯示內(nèi)容確定單元T5,用于根據(jù)轉(zhuǎn)換后的高度和寬度確定圖像縮放控件需顯示的范圍;WPF窗體渲染單元T6,用于獲取WPF窗體狀態(tài),當(dāng)WPF窗體為顯示狀態(tài)時,將該WPF 窗體渲染成圖像;以及將圖像放入圖像縮放控件;初始化單元T7,用于根據(jù)轉(zhuǎn)換結(jié)果初始化圖像縮放的起始位置和結(jié)束位置;以及初始化圖像縮放控件的動畫時間間隔;圖像縮放單元T8,用于根據(jù)圖像縮放的起始位置、結(jié)束位置和動畫時間間隔在圖像縮放控件需顯示的范圍內(nèi)進(jìn)行圖像縮放。本發(fā)明裝置通過圖像縮放控件使得打開或者關(guān)閉WPF窗體時產(chǎn)生動畫效果。在動畫開始前,新建圖像縮放控件并將其父級設(shè)置為WPF應(yīng)用程序;然后將WPF窗體對于屏幕的平面坐標(biāo)系轉(zhuǎn)換到WPF窗體對于WPF應(yīng)用軟件主窗體的平面坐標(biāo)系,由此根據(jù)預(yù)設(shè)的WPF 窗體對于屏幕的位置,可以確定圖像縮放控件需顯示的范圍;將WPF窗體渲染成圖像放入圖像縮放控制;根據(jù)坐標(biāo)轉(zhuǎn)化后的鼠標(biāo)點(diǎn)擊位置和預(yù)定的WPF窗體對于屏幕的位置定義圖像縮放的起始位置和結(jié)束位置;再定義動畫時間間隔;然后進(jìn)行打開或者關(guān)閉WPF窗體的動畫效果,可以消除進(jìn)行窗體縮放動畫時,各窗體變化不一致的現(xiàn)象,提高用戶體驗(yàn)和動畫效率,提高系統(tǒng)資源利用率。
其中,第一獲取單元T2獲取轉(zhuǎn)換關(guān)系時,獲取鼠標(biāo)光標(biāo)相對于屏幕的坐標(biāo)以及該鼠標(biāo)光標(biāo)相對于WPF應(yīng)用程序的坐標(biāo);將鼠標(biāo)光標(biāo)相對于屏幕的坐標(biāo)與鼠標(biāo)光標(biāo)相對于 WPF應(yīng)用程序的坐標(biāo)的比值作為轉(zhuǎn)換關(guān)系;控件顯示內(nèi)容確定單元T5確定顯示范圍時,從轉(zhuǎn)化后預(yù)定的各WPF窗體相對于屏幕的位置中,獲取離WPF應(yīng)用程序主窗體平面坐標(biāo)系原點(diǎn)最遠(yuǎn)的橫坐標(biāo)、最近的橫坐標(biāo)、最遠(yuǎn)的縱坐標(biāo)以及最近的縱坐標(biāo),以最遠(yuǎn)橫坐標(biāo)減去最近橫坐標(biāo)的值作為所述圖像縮放控件需顯示的范圍的寬度;以最遠(yuǎn)縱坐標(biāo)減去最近縱坐標(biāo)的值作為所述圖像縮放控件需顯示的范圍的高度;初始化單元T7初始化圖像縮放的起始位置和結(jié)束位置時,若打開WPF窗體,則將轉(zhuǎn)換后的鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)初始化為圖像縮放的起始位置,將轉(zhuǎn)換后的預(yù)定的各WPF窗體相對于屏幕的位置初始化為圖像縮放的結(jié)束位置;若關(guān)閉WPF窗體,則從轉(zhuǎn)化后預(yù)定的各WPF窗體相對于屏幕的位置中,獲取離WPF應(yīng)用程序主窗體平面坐標(biāo)系原點(diǎn)最近的橫坐標(biāo)以及最近的縱坐標(biāo),將該最近的橫坐標(biāo)和最近的縱坐標(biāo)初始化為圖像縮放的起始位置,將轉(zhuǎn)換后的鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)初始化為圖像縮放的結(jié)束位置。為了使得圖像縮放有更好的視覺效果,初始化單元T7進(jìn)行圖像縮放初始化時,還包括初始化動畫時的透明度。打開WPF窗體時,設(shè)置透明度從O至I漸變;關(guān)閉WPF窗體時,設(shè)置透明度從I至O漸變,其中,O表示完全透明,I表示不透明。為了消除關(guān)閉窗體時,出現(xiàn)的屏幕閃爍狀況,初始化單元T7設(shè)置隱藏WPF窗體的時間間隔,隱藏WPF窗體的時間間隔小于動畫時間間隔。為了消除在動畫開始時,屏幕出現(xiàn)閃爍的狀況,可在進(jìn)行打開窗體的圖像縮放前, 將需要渲染成圖像的WPF窗體設(shè)置在屏幕顯示區(qū)域外。WPF窗體渲染單元T6可將圖像按照渲染的先后順序放入圖像縮放控件,方便圖像縮放控件的顯示。作為一種具體實(shí)時方式,從WPF應(yīng)用程序打開多個WPF窗體(這幾個窗體高可以不一樣,寬度可以不一樣),點(diǎn)擊關(guān)閉全部窗體按鈕,圖像縮放控件(例如ViewBox)出現(xiàn)于這幾個窗體上面,然后這幾個WPF窗體消失,ViewBox開始動畫,從開始位置高寬逐漸縮小, 透明度從I到O漸變,最后縮進(jìn)鼠標(biāo)點(diǎn)擊的地方(結(jié)束位置),整個過程動畫流暢,不出現(xiàn)屏幕閃爍。以上本發(fā)明實(shí)施方式,并不構(gòu)成對本發(fā)明保護(hù)范圍的限定。任何在本發(fā)明的精神和原則之內(nèi)所作的修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的權(quán)利要求保護(hù)范圍之內(nèi)。
8
權(quán)利要求
1.一種同時縮放多個WPF窗體的方法,其特征是,包括步驟新建圖像縮放控件,將所述圖像縮放控件的父級設(shè)置為WPF應(yīng)用程序;獲取將WPF窗體相對于屏幕平面坐標(biāo)系的位置轉(zhuǎn)換到WPF窗體相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的位置的轉(zhuǎn)換關(guān)系;獲取鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo);將鼠標(biāo)點(diǎn)擊位置相對于屏幕平面坐標(biāo)系的坐標(biāo)和預(yù)定的各WPF窗體相對于屏幕平面坐標(biāo)系的位置依據(jù)所述轉(zhuǎn)換關(guān)系進(jìn)行轉(zhuǎn)換;根據(jù)轉(zhuǎn)換結(jié)果確定圖像縮放控件需顯示的范圍;當(dāng)WPF窗體為顯示狀態(tài)時,將該WPF窗體渲染成圖像;以及將圖像放入圖像縮放控件; 根據(jù)轉(zhuǎn)換結(jié)果初始化圖像縮放的起始位置和結(jié)束位置;以及初始化圖像縮放控件的動畫時間間隔;根據(jù)所述圖像縮放的起始位置、結(jié)束位置和動畫時間間隔在所述圖像縮放控件需顯示的范圍內(nèi)進(jìn)行圖像縮放。
2.根據(jù)權(quán)利要求I所述的同時縮放多個WPF窗體的方法,其特征是,所述獲取將WPF窗體相對于屏幕平面坐標(biāo)系的位置轉(zhuǎn)換到WPF窗體相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的位置的轉(zhuǎn)換關(guān)系的步驟包括獲取鼠標(biāo)光標(biāo)相對于屏幕平面坐標(biāo)系的坐標(biāo)以及該鼠標(biāo)光標(biāo)相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的坐標(biāo);將所述鼠標(biāo)光標(biāo)相對于屏幕平面坐標(biāo)系的坐標(biāo)與所述鼠標(biāo)光標(biāo)相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的坐標(biāo)的比值作為所述轉(zhuǎn)換關(guān)系。
3.根據(jù)權(quán)利要求I所述的同時縮放多個WPF窗體的方法,其特征是,所述根據(jù)轉(zhuǎn)換結(jié)果確定圖像縮放控件需顯示的范圍包括步驟從轉(zhuǎn)化后預(yù)定的各WPF 窗體相對于屏幕的位置中,獲取離WPF應(yīng)用程序主窗體平面坐標(biāo)系原點(diǎn)最遠(yuǎn)的橫坐標(biāo)、最近的橫坐標(biāo)、最遠(yuǎn)的縱坐標(biāo)以及最近的縱坐標(biāo),以最遠(yuǎn)橫坐標(biāo)減去最近橫坐標(biāo)的值作為所述圖像縮放控件需顯示的范圍的寬度;以最遠(yuǎn)縱坐標(biāo)減去最近縱坐標(biāo)的值作為所述圖像縮放控件需顯示的范圍的高度。
4.根據(jù)權(quán)利要求I所述的同時縮放多個WPF窗體的方法,其特征是,所述根據(jù)轉(zhuǎn)換結(jié)果初始化圖像縮放的起始位置和結(jié)束位置的步驟包括當(dāng)打開WPF窗體時,將轉(zhuǎn)換后的鼠標(biāo)點(diǎn)擊位置相對于屏幕平面坐標(biāo)系的坐標(biāo)初始化為圖像縮放的起始位置,將轉(zhuǎn)換后的預(yù)定的各WPF窗體相對于屏幕的位置初始化為圖像縮放的結(jié)束位置;當(dāng)關(guān)閉WPF窗體時,從轉(zhuǎn)化后預(yù)定的各WPF窗體相對于屏幕的位置中,獲取離WPF應(yīng)用程序主窗體平面坐標(biāo)系原點(diǎn)最近的橫坐標(biāo)以及最近的縱坐標(biāo),將該最近的橫坐標(biāo)以及最近的縱坐標(biāo)初始化為圖像縮放的起始位置,將轉(zhuǎn)換后的鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)初始化為圖像縮放的結(jié)束位置。
5.根據(jù)權(quán)利要求I所述的同時縮放多個WPF窗體的方法,其特征是,在進(jìn)行圖像縮放初始化時,還包括初始化動畫時的透明度。
6.根據(jù)權(quán)利要求4所述的同時縮放多個WPF窗體的方法,其特征是,若關(guān)閉WPF窗體,則在進(jìn)行圖像縮放前,設(shè)置隱藏WPF窗體的時間間隔,所述隱藏WPF窗體的時間間隔小于所述動畫時間間隔。
7.根據(jù)權(quán)利要求4所述的同時縮放多個WPF窗體的方法,其特征是,在進(jìn)行打開WPF窗體的圖像縮放前,將需要渲染成圖像的WPF窗體設(shè)置在屏幕顯示區(qū)域外。
8.根據(jù)權(quán)利要求I至7任一項(xiàng)所述的同時縮放多WPF窗體的方法,其特征是,在所述將圖像放入圖像縮放控件的步驟中,將圖像按照渲染的先后順序放入圖像縮放控件。
9.一種同時縮放多個WPF窗體的裝置,其特征是,包括控件創(chuàng)建單元,用于新建圖像縮放控件,將所述圖像縮放控件的父級設(shè)置為WPF應(yīng)用程序;第一獲取單元,用于獲取將WPF窗體相對于屏幕平面坐標(biāo)系的位置轉(zhuǎn)換到WPF窗體相對于WPF應(yīng)用程序主窗體平面坐標(biāo)系的位置的轉(zhuǎn)換關(guān)系;第二獲取單元,用于獲取鼠標(biāo)點(diǎn)擊位置相對于屏幕平面坐標(biāo)系的坐標(biāo);坐標(biāo)轉(zhuǎn)換單元,用于將鼠標(biāo)點(diǎn)擊位置相對于屏幕平面坐標(biāo)系的坐標(biāo)和預(yù)定的各WPF窗體相對于屏幕平面坐標(biāo)系的位置依據(jù)所述轉(zhuǎn)換關(guān)系進(jìn)行轉(zhuǎn)換;控件顯示內(nèi)容確定單元,用于根據(jù)轉(zhuǎn)換結(jié)果確定圖像縮放控件需顯示的范圍;WPF窗體渲染單元,用于獲取WPF窗體狀態(tài),當(dāng)WPF窗體為顯示狀態(tài)時,將該WPF窗體渲染成圖像;以及將圖像放入圖像縮放控件;初始化單元,用于根據(jù)轉(zhuǎn)換結(jié)果初始化圖像縮放的起始位置和結(jié)束位置;以及初始化圖像縮放控件的動畫時間間隔;圖像縮放單元,用于根據(jù)所述圖像縮放的起始位置、結(jié)束位置動畫時間間隔在所述圖像縮放控件需顯示的范圍內(nèi)進(jìn)行圖像縮放。
10.根據(jù)權(quán)利要求9所述的同時縮放多個WPF窗體的裝置,其特征是,所述第一獲取單元獲取所述轉(zhuǎn)換關(guān)系時,獲取鼠標(biāo)光標(biāo)相對于屏幕的坐標(biāo)以及該鼠標(biāo)光標(biāo)相對于WPF應(yīng)用程序的坐標(biāo);將所述鼠標(biāo)光標(biāo)相對于屏幕的坐標(biāo)與所述鼠標(biāo)光標(biāo)相對于WPF應(yīng)用程序的坐標(biāo)的比值作為所述轉(zhuǎn)換關(guān)系;所述控件顯示內(nèi)容確定單元確定顯示范圍時,從轉(zhuǎn)化后預(yù)定的各WPF窗體相對于屏幕的位置中,獲取離WPF應(yīng)用程序主窗體平面坐標(biāo)系原點(diǎn)最遠(yuǎn)的橫坐標(biāo)、最近的橫坐標(biāo)、最遠(yuǎn)的縱坐標(biāo)以及最近的縱坐標(biāo),以最遠(yuǎn)橫坐標(biāo)減去最近橫坐標(biāo)的值作為所述圖像縮放控件需顯示的范圍的寬度;以最遠(yuǎn)縱坐標(biāo)減去最近縱坐標(biāo)的值作為所述圖像縮放控件需顯示的范圍的高度;所述初始化單元初始化圖像縮放的起始位置和結(jié)束位置時,若打開WPF窗體,則將轉(zhuǎn)換后的鼠標(biāo)點(diǎn)擊位置相對于屏幕的坐標(biāo)初始化為圖像縮放的起始位置,將轉(zhuǎn)換后的預(yù)定的各WPF窗體相對于屏幕的位置初始化為圖像縮放的結(jié)束位置;若關(guān)閉WPF窗體,則從轉(zhuǎn)化后預(yù)定的各WPF窗體相對于屏幕的位置中,獲取離WPF應(yīng)用程序主窗體平面坐標(biāo)系原點(diǎn)最近的橫坐標(biāo)以及最近的縱坐標(biāo),將該最近的橫坐標(biāo)和最近的縱坐標(biāo)初始化為圖像縮放的起始位置,將轉(zhuǎn)換后的鼠標(biāo)點(diǎn)擊位置相對于屏幕平面坐標(biāo)系的坐標(biāo)初始化為圖像縮放的結(jié)束位置。
全文摘要
本發(fā)明提出一種同時縮放多個WPF窗體的方法,包括步驟新建圖像縮放控件;獲取屏幕坐標(biāo)系到WPF應(yīng)用程序坐標(biāo)的轉(zhuǎn)換關(guān)系;獲取鼠標(biāo)點(diǎn)擊位置在屏幕坐標(biāo)系的坐標(biāo);進(jìn)行坐標(biāo)轉(zhuǎn)換;根據(jù)轉(zhuǎn)換結(jié)果確定圖像縮放控件顯示范圍;將WPF窗體渲染成圖像放入圖像縮放控件;初始化控件動畫的起始位置、結(jié)束位置和時間間隔;根據(jù)起始位置、結(jié)束位置、時間間隔和顯示范圍,進(jìn)行圖像縮放。本發(fā)明還提出一種同時縮放多個WPF窗體的裝置,可以消進(jìn)行窗體縮放動畫時,各窗體變化不一致的現(xiàn)象,提高用戶體驗(yàn)和動畫效率,提高系統(tǒng)資源利用率。
文檔編號G06F9/44GK102591646SQ20111044170
公開日2012年7月18日 申請日期2011年12月23日 優(yōu)先權(quán)日2011年12月23日
發(fā)明者陸明添 申請人:廣東威創(chuàng)視訊科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1