本發(fā)明涉及到互聯(lián)網(wǎng)技術(shù)領(lǐng)域,特別涉及到浮動窗口顯示的方法和裝置。
背景技術(shù):
目前有越來越多的應(yīng)用程序安裝在手機(jī)、電腦、PAD等終端上,而對于一些常用的應(yīng)用程序,為了方便用戶查看或操作,可將這些常用的應(yīng)用程序的操作界面通過浮動窗口的形式顯示在終端界面上,例如電腦管家、網(wǎng)速監(jiān)控、天氣、時鐘、日歷等。然而,當(dāng)浮動窗口以前端顯示方式總是顯示在所有界面的前端時,有些浮動窗口可能會遮擋當(dāng)前界面的某些控件或內(nèi)容,用戶需要將浮動窗口移動到其他位置,或在設(shè)置中取消浮動窗口前端顯示,才能對當(dāng)前界面進(jìn)行正常操作,這反而給用戶操作帶來了不便。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供一種浮動窗口顯示的方法和裝置,可根據(jù)浮動窗口位置改變浮動窗口展現(xiàn)形式,避免浮動窗口遮擋當(dāng)前界面的操作控件和顯示內(nèi)容。
本發(fā)明實施例提出一種浮動窗口顯示的方法,包括步驟:
接收錄入的第一拖拽指令,根據(jù)鼠標(biāo)或觸摸點的移動軌跡,移動浮動窗口位置;
當(dāng)所述浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將所述浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo),在當(dāng)前界面的指定區(qū)域處以狀態(tài)欄模式顯示所述圖標(biāo)。
本發(fā)明實施例還提出一種浮動窗口顯示的裝置,包括:
指令模塊,用于接收錄入的第一拖拽指令;
繪制模塊,用于根據(jù)鼠標(biāo)或觸摸點的移動軌跡,移動浮動窗口位置;
轉(zhuǎn)換模塊,用于當(dāng)所述浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將所述浮 動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo);
所述繪制模塊還用于,在當(dāng)前界面的指定區(qū)域處以狀態(tài)欄模式顯示所述圖標(biāo)。
本發(fā)明實施例根據(jù)浮動窗口位置改變浮動窗口展現(xiàn)形式,當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式圖標(biāo)顯示在當(dāng)前界面的指定區(qū)域,即避免了浮動窗口遮擋當(dāng)前界面的操作控件和顯示內(nèi)容,又保證浮動窗口對應(yīng)的常用應(yīng)用程序的內(nèi)容仍然顯示在當(dāng)前界面上,可供用戶快速查看和操作該常用應(yīng)用程序,方便用戶操作。
附圖說明
圖1為本發(fā)明實施例中浮動窗口顯示的裝置所在終端的總線圖;
圖2為本發(fā)明浮動窗口顯示的方法的第一實施例的流程圖;
圖3為本發(fā)明浮動窗口顯示的方法的第二實施例的流程圖;
圖4為本發(fā)明浮動窗口顯示的方法的第三實施例的流程圖;
圖5為本發(fā)明浮動窗口顯示的方法的第四實施例的流程圖;
圖6為本發(fā)明浮動窗口顯示的方法的第五實施例的流程圖;
圖7為本發(fā)明浮動窗口顯示的裝置的第一實施例的模塊示意圖;
圖8為本發(fā)明浮動窗口顯示的裝置的第二實施例的模塊示意圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進(jìn)一步說明。
具體實施方式
應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
參照圖1,圖1為本發(fā)明實施例中浮動窗口顯示的裝置所在終端的總線圖,圖1所示的終端可以包括:至少一個處理器101,例如CPU,至少一個網(wǎng)絡(luò)接口104,用戶接口103,存儲器105,至少一個通信總線102。其中,通信總線102用于實現(xiàn)這些組件之間的連接通信。其中,用戶接口103可以包括顯示屏 (Display)、鍵盤(Keyboard),還可以包括標(biāo)準(zhǔn)的有線接口、無線接口。網(wǎng)絡(luò)接口104可以包括標(biāo)準(zhǔn)的有線接口、無線接口(如WIFI接口)。存儲器105可以是高速RAM存儲器,也可以是非不穩(wěn)定的存儲器(non-volatile memory),例如至少一個磁盤存儲器。存儲器105還可以是至少一個位于遠(yuǎn)離前述處理器101的存儲裝置。作為一種計算機(jī)存儲介質(zhì)的存儲器105中可以包括操作系統(tǒng)、網(wǎng)絡(luò)通信模塊、用戶接口模塊以及浮動窗口顯示程序。
在圖1所示的浮動窗口顯示的裝置所在終端中,網(wǎng)絡(luò)接口104主要用于連接服務(wù)器或其他終端,與服務(wù)器或其他終端進(jìn)行數(shù)據(jù)通信;而用戶接口103主要用于接收用戶指令,并與用戶進(jìn)行交互;而處理器101可以用于調(diào)用存儲器105中存儲的浮動窗口顯示程序,并執(zhí)行以下操作:
通過用戶接口103接收錄入的第一拖拽指令,根據(jù)鼠標(biāo)或觸摸點的移動軌跡,移動浮動窗口位置;
當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo),通過用戶接口103在當(dāng)前界面的指定區(qū)域處以狀態(tài)欄模式顯示圖標(biāo)。
在一個實施例中,處理器101調(diào)用存儲器105中存儲的浮動窗口顯示程序還可以執(zhí)行以下操作:
實時跟蹤浮動窗口的邊界坐標(biāo)或中心點坐標(biāo);
當(dāng)浮動窗口的邊界坐標(biāo)中的任一個或所述浮動窗口的中心點坐標(biāo)與指定區(qū)域的邊界坐標(biāo)中的任一個重合時,確定浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域。
在一個實施例中,處理器101調(diào)用存儲器105中存儲的浮動窗口顯示程序還可以執(zhí)行以下操作:
當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,實時獲取浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積;
當(dāng)浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積與浮動窗口總面積的比值達(dá)到預(yù)設(shè)比例時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo),并通過用戶接口103在當(dāng)前界面的指定區(qū)域處以狀態(tài)欄模式顯示圖標(biāo)。
在一個實施例中,處理器101調(diào)用存儲器105中存儲的浮動窗口顯示程序還可以執(zhí)行以下操作:
當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,繼續(xù)實時跟蹤浮動窗口的邊界 坐標(biāo);
獲取已越過指定區(qū)域邊界的浮動窗口邊界坐標(biāo);
確定已越過指定區(qū)域邊界的浮動窗口邊界坐標(biāo)與指定區(qū)域邊界坐標(biāo)所圍成的窗口區(qū)域面積,作為浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積。
在一個實施例中,處理器101調(diào)用存儲器105中存儲的浮動窗口顯示程序還可以執(zhí)行以下操作:
接收錄入的第二拖拽指令,將狀態(tài)欄模式的圖標(biāo)從當(dāng)前界面的指定區(qū)域處移出;
將已移出的圖標(biāo)轉(zhuǎn)換為浮動窗口,并根據(jù)鼠標(biāo)或觸摸點的移動軌跡,移動浮動窗口位置。
本實施例圖1所描述的浮動窗口顯示的裝置及其所在終端,根據(jù)浮動窗口位置改變浮動窗口展現(xiàn)形式,當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式圖標(biāo)顯示在當(dāng)前界面的指定區(qū)域,即避免了浮動窗口遮擋當(dāng)前界面的操作控件和顯示內(nèi)容,又保證浮動窗口對應(yīng)的常用應(yīng)用程序的內(nèi)容仍然顯示在當(dāng)前界面上,可供用戶快速查看和操作該常用應(yīng)用程序,方便用戶操作。
如圖2所示,圖2為本發(fā)明浮動窗口顯示的方法的第一實施例的流程圖。本實施例提到的浮動窗口顯示的方法,包括步驟:
步驟S10,接收錄入的第一拖拽指令,根據(jù)鼠標(biāo)或觸摸點的移動軌跡,移動浮動窗口位置;
本實施例在手機(jī)、電腦、PAD等終端的界面上顯示有常用應(yīng)用程序的浮動窗口,例如電腦管家、網(wǎng)速監(jiān)控、天氣、時鐘、日歷等。浮動窗口可前端顯示,當(dāng)用戶打開其他應(yīng)用的界面時,浮動窗口顯示在當(dāng)前運(yùn)行的界面前端。由于浮動窗口前端顯示可能會遮擋當(dāng)前界面上的某些顯示內(nèi)容或操作控件,當(dāng)用戶想要移開浮動窗口時,可在終端屏幕上點擊并移動浮動窗口,即錄入第一拖拽指令。如果終端為臺式電腦、一體機(jī)、筆記本電腦等連接有鼠標(biāo)的終端,則用戶采用鼠標(biāo)來移動浮動窗口,如果終端為手機(jī)、PAD等觸摸屏終端,則用戶采用觸摸的方式來移動浮動窗口。在鼠標(biāo)不松動或觸摸點不離開觸摸屏的情況下,終端根據(jù)鼠標(biāo)或觸摸點的移動軌跡,將浮動窗口移動至鼠 標(biāo)或觸摸點所在的位置。如果用戶手指離開鼠標(biāo)或觸摸屏,則停止移動浮動窗口。
步驟S20,當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo),在當(dāng)前界面的指定區(qū)域處以狀態(tài)欄模式顯示圖標(biāo)。
在當(dāng)前界面的一些預(yù)設(shè)區(qū)域,例如瀏覽器的上方或下方的狀態(tài)欄區(qū)域、左右兩側(cè)的邊框區(qū)域,瀏覽器的標(biāo)簽顯示區(qū)域,文件夾左側(cè)的導(dǎo)航區(qū)域等,均可作為當(dāng)前界面的指定區(qū)域。當(dāng)然也可以是其他指定區(qū)域,例如當(dāng)前界面的左上角、右下角、中心區(qū)域等。在浮動窗口移動的過程中,終端可識別出浮動窗口在顯示屏上的位置坐標(biāo),例如可將浮動窗口的中心點的坐標(biāo)代表整個浮動窗口的位置坐標(biāo),如果浮動窗口進(jìn)入到當(dāng)前界面的指定區(qū)域處,終端判斷出浮動窗口已到達(dá)指定區(qū)域,則將浮動窗口轉(zhuǎn)換為可直接融合在狀態(tài)欄中的圖標(biāo)格式,即狀態(tài)欄模式的圖標(biāo),并將已轉(zhuǎn)換的圖標(biāo)作為上述指定區(qū)域的一部分內(nèi)容,顯示在指定區(qū)域內(nèi)。例如,圓形的浮動窗口移動到文件夾左側(cè)的導(dǎo)航區(qū)域,則將圓形的浮動窗口轉(zhuǎn)換為只顯示文字的圖標(biāo),并將圖標(biāo)中的文字融入導(dǎo)航區(qū)域,顯示在導(dǎo)航區(qū)域的空白處,或插入到導(dǎo)航區(qū)域中兩條已存在的導(dǎo)航目錄之間。本實施例根據(jù)浮動窗口位置改變浮動窗口展現(xiàn)形式,當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式圖標(biāo)顯示在當(dāng)前界面的指定區(qū)域,即避免了浮動窗口遮擋當(dāng)前界面的操作控件和顯示內(nèi)容,又保證浮動窗口對應(yīng)的常用應(yīng)用程序的內(nèi)容仍然顯示在當(dāng)前界面上,可供用戶快速查看和操作該常用應(yīng)用程序,方便用戶操作。
如圖3所示,圖3為本發(fā)明浮動窗口顯示的方法的第二實施例的流程圖。本實施例包括圖2所示實施例中的所有步驟,還進(jìn)一步說明如何確定浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域,在步驟S20之前還包括:
步驟S31,實時跟蹤浮動窗口的邊界坐標(biāo)或中心點坐標(biāo);
本實施例中,終端先識別出浮動窗口的邊界,并實時跟蹤浮動窗口邊界上各個坐標(biāo)的移動軌跡,實現(xiàn)對浮動窗口位置的跟蹤。此外還可以采用浮動窗口的中心點代表浮動窗口的整體坐標(biāo),終端可對浮動窗口的中心點坐標(biāo)實時跟蹤。
步驟S32,當(dāng)浮動窗口的邊界坐標(biāo)中的任一個或浮動窗口的中心點坐標(biāo)與 指定區(qū)域的邊界坐標(biāo)中的任一個重合時,確定浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域。
由于在當(dāng)前界面的指定區(qū)域也存在一個邊界,終端可識別并記錄該指定區(qū)域的邊界坐標(biāo)。以實時跟蹤浮動窗口的邊界坐標(biāo)為例,當(dāng)浮動窗口的邊界坐標(biāo)中的任意一坐標(biāo)與記錄的指定區(qū)域的邊界坐標(biāo)中的任意一坐標(biāo)相同時,則說明該浮動窗口已經(jīng)到達(dá)當(dāng)前界面的指定區(qū)域。例如瀏覽器上方的狀態(tài)欄為指定區(qū)域,狀態(tài)欄的邊界為狀態(tài)欄下方的橫線坐標(biāo)y=20cm,對于圓形的浮動窗口,當(dāng)終端識別出圓形浮動窗口的邊界圓周的最高點坐標(biāo)(x0,y0)中y0=20cm時,則終端判斷出圓形浮動窗口的邊界坐標(biāo)已到達(dá)狀態(tài)欄的邊界,浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域,即浮動窗口剛觸碰到當(dāng)前界面的指定區(qū)域,終端就將其檢測出來,實現(xiàn)了終端對浮動窗口位置的快速檢測,提高了浮動窗口轉(zhuǎn)換效率。如果以浮動窗口的中心點代表浮動窗口的整體坐標(biāo),例如圓形浮動窗口的中心點坐標(biāo)為(x1,y1),當(dāng)圓形浮動窗口的邊界圓周的最高點坐標(biāo)(x0,y0)中y0=20cm時,終端并不對浮動窗口進(jìn)行轉(zhuǎn)換,而當(dāng)中心點坐標(biāo)(x1,y1)中y1=20cm時,終端才確定圓形浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域,避免了因誤操作將浮動窗口觸碰到指定區(qū)域而被終端轉(zhuǎn)換為狀態(tài)欄圖標(biāo),提高了終端識別浮動窗口位置和轉(zhuǎn)換浮動窗口顯示模式的準(zhǔn)確性。
如圖4所示,圖4為本發(fā)明浮動窗口顯示的方法的第三實施例的流程圖。本實施例包括圖2所示實施例中的所有步驟,還進(jìn)一步說明轉(zhuǎn)換顯示模式的觸發(fā)條件,步驟S20包括:
步驟S21,當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,實時獲取浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積;
步驟S22,當(dāng)浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積與浮動窗口總面積的比值達(dá)到預(yù)設(shè)比例時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo),并在當(dāng)前界面的指定區(qū)域處以狀態(tài)欄模式顯示圖標(biāo)。
本實施例中,為進(jìn)一步避免因誤操作將浮動窗口觸碰到指定區(qū)域而被終端轉(zhuǎn)換為狀態(tài)欄圖標(biāo),預(yù)先設(shè)置有一個比例值。終端在確定浮動窗口已到達(dá)當(dāng)前界面的指定區(qū)域后,計算浮動窗口已經(jīng)進(jìn)入到指定區(qū)域的部分區(qū)域的面積。終端還計算該部分區(qū)域的面積在浮動窗口的總面積中所占的比例,獲得 一個比值,這個比值與預(yù)設(shè)的比例值比較,如果獲得的比值小于預(yù)設(shè)比例,則終端暫不轉(zhuǎn)換浮動窗口,浮動窗口可繼續(xù)向指定區(qū)域移動,終端繼續(xù)實時計算浮動窗口已經(jīng)進(jìn)入到指定區(qū)域的部分區(qū)域的面積、以及該部分區(qū)域的面積與浮動窗口的總面積的比值,如果獲得的比值小于或等于預(yù)設(shè)比例,則觸發(fā)轉(zhuǎn)換條件,終端將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo),并將轉(zhuǎn)換后的圖標(biāo)以狀態(tài)欄模式顯示在指定區(qū)域。采用面積比值作為轉(zhuǎn)換顯示模式的觸發(fā)條件,進(jìn)一步避免了因誤操作將浮動窗口觸碰到指定區(qū)域而被終端轉(zhuǎn)換為狀態(tài)欄圖標(biāo),提高了終端轉(zhuǎn)換浮動窗口顯示模式的準(zhǔn)確性。
如圖5所示,圖5為本發(fā)明浮動窗口顯示的方法的第四實施例的流程圖。本實施例包括圖4所示實施例中的所有步驟,還進(jìn)一步說明如何確定浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積,步驟S21包括:
步驟S211,當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,繼續(xù)實時跟蹤浮動窗口的邊界坐標(biāo);
步驟S212,獲取已越過指定區(qū)域邊界的浮動窗口邊界坐標(biāo);
步驟S213,確定已越過指定區(qū)域邊界的浮動窗口邊界坐標(biāo)與指定區(qū)域邊界坐標(biāo)所圍成的窗口區(qū)域面積,作為浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積。
本實施例終端在確定浮動窗口已到達(dá)當(dāng)前界面的指定區(qū)域后,識別浮動窗口的邊界,獲取邊界坐標(biāo)。同時,終端根據(jù)浮動窗口的邊界坐標(biāo)和指定區(qū)域的邊界坐標(biāo),提取出浮動窗口的邊界坐標(biāo)中已越過指定區(qū)域邊界的那部分邊界坐標(biāo),已越過指定區(qū)域邊界的那部分邊界坐標(biāo)與指定區(qū)域邊界坐標(biāo)之間圍成一個窗口區(qū)域,該窗口區(qū)域即為浮動窗口已越過指定區(qū)域邊界的部分區(qū)域,終端計算該部分區(qū)域的面積,獲得浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積。例如浮動窗口為圓形,瀏覽器上方的狀態(tài)欄為指定區(qū)域,狀態(tài)欄的下邊緣為指定區(qū)域邊界,當(dāng)圓形浮動窗口向上移動到1/2個圓進(jìn)入指定區(qū)域,則已越過指定區(qū)域邊界的浮動窗口邊界坐標(biāo)與指定區(qū)域邊界坐標(biāo)所圍成的窗口區(qū)域為圓形浮動窗口的上半圓,此部分的面積即為浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積。本實施例終端采用邊界坐標(biāo)確定浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積,使計算的區(qū)域面積更加準(zhǔn)確。
如圖6所示,圖6為本發(fā)明浮動窗口顯示的方法的第五實施例的流程圖。本實施例包括圖4所示實施例中的所有步驟,還進(jìn)一步說明如何恢復(fù)浮動窗口,在步驟S20之后還包括:
步驟S41,接收錄入的第二拖拽指令,將狀態(tài)欄模式的圖標(biāo)從當(dāng)前界面的指定區(qū)域處移出;
步驟S42,將已移出的圖標(biāo)轉(zhuǎn)換為浮動窗口,并根據(jù)鼠標(biāo)或觸摸點的移動軌跡,移動浮動窗口位置。
本實施例中,在浮動窗口對應(yīng)的圖標(biāo)以狀態(tài)欄模式顯示在當(dāng)前界面指定區(qū)域后,如果用戶希望將該圖標(biāo)重新恢復(fù)為浮動窗口模式顯示,則可采用鼠標(biāo)點擊該圖標(biāo),或采用觸摸的方式按住該圖標(biāo),并將其從指定區(qū)域上拖拽出來,并轉(zhuǎn)換為浮動窗口。此外,用戶還可以在圖標(biāo)位置點擊鼠標(biāo)右鍵,選擇轉(zhuǎn)換為浮動窗口的選項,將狀態(tài)欄模式的圖標(biāo)轉(zhuǎn)換為浮動窗口。浮動窗口移出指定區(qū)域后,如果鼠標(biāo)繼續(xù)被按壓或觸摸點處仍然有觸屏信息,且鼠標(biāo)或觸摸點繼續(xù)移動,則終端根據(jù)鼠標(biāo)或觸摸點的移動軌跡移動浮動窗口位置,直至鼠標(biāo)被松開或觸摸點無觸屏信息,則停止移動浮動窗口。本實施例中,當(dāng)浮動窗口進(jìn)入指定區(qū)域后,終端將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo)進(jìn)行顯示,當(dāng)狀態(tài)欄模式的圖標(biāo)離開指定區(qū)域時,終端將狀態(tài)欄模式的圖標(biāo)重新恢復(fù)為浮動窗口,終端根據(jù)浮動窗口位置改變浮動窗口展現(xiàn)形式,使浮動窗口展現(xiàn)方式靈活多變,方便用戶操作,滿足各種需求。
如圖7所示,圖7為本發(fā)明浮動窗口顯示的裝置的第一實施例的模塊示意圖。本實施例提到的浮動窗口顯示的裝置,包括:
指令模塊210,用于接收錄入的第一拖拽指令;
繪制模塊220,用于根據(jù)鼠標(biāo)或觸摸點的移動軌跡,移動浮動窗口位置;
轉(zhuǎn)換模塊230,用于當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo);
繪制模塊220還用于,在當(dāng)前界面的指定區(qū)域處以狀態(tài)欄模式顯示圖標(biāo)。
本實施例在手機(jī)、電腦、PAD等終端的界面上顯示有常用應(yīng)用程序的浮動窗口,例如電腦管家、網(wǎng)速監(jiān)控、天氣、時鐘、日歷等。浮動窗口可前端 顯示,當(dāng)用戶打開其他應(yīng)用的界面時,浮動窗口顯示在當(dāng)前運(yùn)行的界面前端。由于浮動窗口前端顯示可能會遮擋當(dāng)前界面上的某些顯示內(nèi)容或操作控件,當(dāng)用戶想要移開浮動窗口時,可在終端屏幕上點擊并移動浮動窗口,即錄入第一拖拽指令。如果終端為臺式電腦、一體機(jī)、筆記本電腦等連接有鼠標(biāo)的終端,則用戶采用鼠標(biāo)來移動浮動窗口,如果終端為手機(jī)、PAD等觸摸屏終端,則用戶采用觸摸的方式來移動浮動窗口。在鼠標(biāo)不松動或觸摸點不離開觸摸屏的情況下,終端根據(jù)鼠標(biāo)或觸摸點的移動軌跡,將浮動窗口移動至鼠標(biāo)或觸摸點所在的位置。如果用戶手指離開鼠標(biāo)或觸摸屏,則停止移動浮動窗口。
在當(dāng)前界面的一些預(yù)設(shè)區(qū)域,例如瀏覽器的上方或下方的狀態(tài)欄區(qū)域、左右兩側(cè)的邊框區(qū)域,瀏覽器的標(biāo)簽顯示區(qū)域,文件夾左側(cè)的導(dǎo)航區(qū)域等,均可作為當(dāng)前界面的指定區(qū)域。當(dāng)然也可以是其他指定區(qū)域,例如當(dāng)前界面的左上角、右下角、中心區(qū)域等。在浮動窗口移動的過程中,終端可識別出浮動窗口在顯示屏上的位置坐標(biāo),例如可將浮動窗口的中心點的坐標(biāo)代表整個浮動窗口的位置坐標(biāo),如果浮動窗口進(jìn)入到當(dāng)前界面的指定區(qū)域處,終端判斷出浮動窗口已到達(dá)指定區(qū)域,則將浮動窗口轉(zhuǎn)換為可直接融合在狀態(tài)欄中的圖標(biāo)格式,即狀態(tài)欄模式的圖標(biāo),并將已轉(zhuǎn)換的圖標(biāo)作為上述指定區(qū)域的一部分內(nèi)容,顯示在指定區(qū)域內(nèi)。例如,圓形的浮動窗口移動到文件夾左側(cè)的導(dǎo)航區(qū)域,則將圓形的浮動窗口轉(zhuǎn)換為只顯示文字的圖標(biāo),并將圖標(biāo)中的文字融入導(dǎo)航區(qū)域,顯示在導(dǎo)航區(qū)域的空白處,或插入到導(dǎo)航區(qū)域中兩條已存在的導(dǎo)航目錄之間。本實施例根據(jù)浮動窗口位置改變浮動窗口展現(xiàn)形式,當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式圖標(biāo)顯示在當(dāng)前界面的指定區(qū)域,即避免了浮動窗口遮擋當(dāng)前界面的操作控件和顯示內(nèi)容,又保證浮動窗口對應(yīng)的常用應(yīng)用程序的內(nèi)容仍然顯示在當(dāng)前界面上,可供用戶快速查看和操作該常用應(yīng)用程序,方便用戶操作。
如圖8所示,圖8為本發(fā)明浮動窗口顯示的裝置的第二實施例的模塊示意圖。本實施例包括圖7所示實施例中的所有模塊,為進(jìn)一步說明如何確定浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域,還增加了跟蹤模塊240,用于:
實時跟蹤浮動窗口的邊界坐標(biāo)或中心點坐標(biāo);
當(dāng)浮動窗口的邊界坐標(biāo)中的任一個或所述浮動窗口的中心點坐標(biāo)與指定區(qū)域的邊界坐標(biāo)中的任一個重合時,確定浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域。
本實施例中,終端先識別出浮動窗口的邊界,并實時跟蹤浮動窗口邊界上各個坐標(biāo)的移動軌跡,實現(xiàn)對浮動窗口位置的跟蹤。此外還可以采用浮動窗口的中心點代表浮動窗口的整體坐標(biāo),終端可對浮動窗口的中心點坐標(biāo)實時跟蹤。由于在當(dāng)前界面的指定區(qū)域也存在一個邊界,終端可識別并記錄該指定區(qū)域的邊界坐標(biāo)。以實時跟蹤浮動窗口的邊界坐標(biāo)為例,當(dāng)浮動窗口的邊界坐標(biāo)中的任意一坐標(biāo)與記錄的指定區(qū)域的邊界坐標(biāo)中的任意一坐標(biāo)相同時,則說明該浮動窗口已經(jīng)到達(dá)當(dāng)前界面的指定區(qū)域。例如瀏覽器上方的狀態(tài)欄為指定區(qū)域,狀態(tài)欄的邊界為狀態(tài)欄下方的橫線坐標(biāo)y=20cm,對于圓形的浮動窗口,當(dāng)終端識別出圓形浮動窗口的邊界圓周的最高點坐標(biāo)(x0,y0)中y0=20cm時,則終端判斷出圓形浮動窗口的邊界坐標(biāo)已到達(dá)狀態(tài)欄的邊界,浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域,即浮動窗口剛觸碰到當(dāng)前界面的指定區(qū)域,終端就將其檢測出來,實現(xiàn)了終端對浮動窗口位置的快速檢測,提高了浮動窗口轉(zhuǎn)換效率。如果以浮動窗口的中心點代表浮動窗口的整體坐標(biāo),例如圓形浮動窗口的中心點坐標(biāo)為(x1,y1),當(dāng)圓形浮動窗口的邊界圓周的最高點坐標(biāo)(x0,y0)中y0=20cm時,終端并不對浮動窗口進(jìn)行轉(zhuǎn)換,而當(dāng)中心點坐標(biāo)(x1,y1)中y1=20cm時,終端才確定圓形浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域,避免了因誤操作將浮動窗口觸碰到指定區(qū)域而被終端轉(zhuǎn)換為狀態(tài)欄圖標(biāo),提高了終端識別浮動窗口位置和轉(zhuǎn)換浮動窗口顯示模式的準(zhǔn)確性。
進(jìn)一步的,為了說明轉(zhuǎn)換顯示模式的前提,跟蹤模塊240還用于,當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,實時獲取浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積;
轉(zhuǎn)換模塊230還用于,當(dāng)浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積與浮動窗口總面積的比值達(dá)到預(yù)設(shè)比例時,將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo)。
本實施例中,為進(jìn)一步避免因誤操作將浮動窗口觸碰到指定區(qū)域而被終端轉(zhuǎn)換為狀態(tài)欄圖標(biāo),預(yù)先設(shè)置有一個比例值。終端在確定浮動窗口已到達(dá)當(dāng)前界面的指定區(qū)域后,計算浮動窗口已經(jīng)進(jìn)入到指定區(qū)域的部分區(qū)域的面 積。終端還計算該部分區(qū)域的面積在浮動窗口的總面積中所占的比例,獲得一個比值,這個比值與預(yù)設(shè)的比例值比較,如果獲得的比值小于預(yù)設(shè)比例,則終端暫不轉(zhuǎn)換浮動窗口,浮動窗口可繼續(xù)向指定區(qū)域移動,終端繼續(xù)實時計算浮動窗口已經(jīng)進(jìn)入到指定區(qū)域的部分區(qū)域的面積、以及該部分區(qū)域的面積與浮動窗口的總面積的比值,如果獲得的比值小于或等于預(yù)設(shè)比例,則觸發(fā)轉(zhuǎn)換條件,終端將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo),并將轉(zhuǎn)換后的圖標(biāo)以狀態(tài)欄模式顯示在指定區(qū)域。采用面積比值作為轉(zhuǎn)換顯示模式的觸發(fā)條件,進(jìn)一步避免了因誤操作將浮動窗口觸碰到指定區(qū)域而被終端轉(zhuǎn)換為狀態(tài)欄圖標(biāo),提高了終端轉(zhuǎn)換浮動窗口顯示模式的準(zhǔn)確性。
進(jìn)一步的,為說明如何確定浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積,跟蹤模塊240還用于:
當(dāng)浮動窗口到達(dá)當(dāng)前界面的指定區(qū)域時,繼續(xù)實時跟蹤浮動窗口的邊界坐標(biāo);
獲取已越過指定區(qū)域邊界的浮動窗口邊界坐標(biāo);
確定已越過指定區(qū)域邊界的浮動窗口邊界坐標(biāo)與指定區(qū)域邊界坐標(biāo)所圍成的窗口區(qū)域面積,作為浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積。
本實施例終端在確定浮動窗口已到達(dá)當(dāng)前界面的指定區(qū)域后,識別浮動窗口的邊界,獲取邊界坐標(biāo)。同時,終端根據(jù)浮動窗口的邊界坐標(biāo)和指定區(qū)域的邊界坐標(biāo),提取出浮動窗口的邊界坐標(biāo)中已越過指定區(qū)域邊界的那部分邊界坐標(biāo),已越過指定區(qū)域邊界的那部分邊界坐標(biāo)與指定區(qū)域邊界坐標(biāo)之間圍成一個窗口區(qū)域,該窗口區(qū)域即為浮動窗口已越過指定區(qū)域邊界的部分區(qū)域,終端計算該部分區(qū)域的面積,獲得浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積。例如浮動窗口為圓形,瀏覽器上方的狀態(tài)欄為指定區(qū)域,狀態(tài)欄的下邊緣為指定區(qū)域邊界,當(dāng)圓形浮動窗口向上移動到1/2個圓進(jìn)入指定區(qū)域,則已越過指定區(qū)域邊界的浮動窗口邊界坐標(biāo)與指定區(qū)域邊界坐標(biāo)所圍成的窗口區(qū)域為圓形浮動窗口的上半圓,此部分的面積即為浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積。本實施例終端采用邊界坐標(biāo)確定浮動窗口中已到達(dá)指定區(qū)域的窗口區(qū)域面積,使計算的區(qū)域面積更加準(zhǔn)確。
進(jìn)一步的,為說明如何恢復(fù)浮動窗口,指令模塊210還用于,接收錄入的第二拖拽指令;
繪制模塊220還用于,將狀態(tài)欄模式的圖標(biāo)從當(dāng)前界面的指定區(qū)域處移出;
轉(zhuǎn)換模塊230還用于,將已移出的圖標(biāo)轉(zhuǎn)換為浮動窗口;
繪制模塊220還用于,根據(jù)鼠標(biāo)或觸摸點的移動軌跡,移動浮動窗口位置。
本實施例中,在浮動窗口對應(yīng)的圖標(biāo)以狀態(tài)欄模式顯示在當(dāng)前界面指定區(qū)域后,如果用戶希望將該圖標(biāo)重新恢復(fù)為浮動窗口模式顯示,則可采用鼠標(biāo)點擊該圖標(biāo),或采用觸摸的方式按住該圖標(biāo),并將其從指定區(qū)域上拖拽出來,并轉(zhuǎn)換為浮動窗口。此外,用戶還可以在圖標(biāo)位置點擊鼠標(biāo)右鍵,選擇轉(zhuǎn)換為浮動窗口的選項,將狀態(tài)欄模式的圖標(biāo)轉(zhuǎn)換為浮動窗口。浮動窗口移出指定區(qū)域后,如果鼠標(biāo)繼續(xù)被按壓或觸摸點處仍然有觸屏信息,且鼠標(biāo)或觸摸點繼續(xù)移動,則終端根據(jù)鼠標(biāo)或觸摸點的移動軌跡移動浮動窗口位置,直至鼠標(biāo)被松開或觸摸點無觸屏信息,則停止移動浮動窗口。本實施例中,當(dāng)浮動窗口進(jìn)入指定區(qū)域后,終端將浮動窗口轉(zhuǎn)換為狀態(tài)欄模式的圖標(biāo)進(jìn)行顯示,當(dāng)狀態(tài)欄模式的圖標(biāo)離開指定區(qū)域時,終端將狀態(tài)欄模式的圖標(biāo)重新恢復(fù)為浮動窗口,終端根據(jù)浮動窗口位置改變浮動窗口展現(xiàn)形式,使浮動窗口展現(xiàn)方式靈活多變,方便用戶操作,滿足各種需求。
需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的 技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品存儲在一個存儲介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機(jī),計算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。
以上所述僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。