欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

計(jì)算機(jī)顯示屏上按比例顯示窗口的方法及裝置的制作方法

文檔序號(hào):6406760閱讀:287來(lái)源:國(guó)知局
專利名稱:計(jì)算機(jī)顯示屏上按比例顯示窗口的方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域。更具體地說(shuō),涉及計(jì)算機(jī)顯示屏上的窗口的比例表示。
與此專利相關(guān)并從而作為參考資料的是題為“在計(jì)算機(jī)顯示屏上醒目地顯示窗口的方法和裝置的共同未決的美國(guó)專利申請(qǐng),其申請(qǐng)?zhí)枮?7,811,562,該申請(qǐng)?jiān)谕蝗辙D(zhuǎn)讓和遞交。
使用所謂的“圖形用戶接口”的計(jì)算機(jī)系統(tǒng)是一種最近方擠身于現(xiàn)代化行列的設(shè)備,該系統(tǒng)最初由Apple公司引入市場(chǎng),以后又被Microsoft公司在它的“Windows”程序中采用,IBM公司也在它的OS/2及PresentationManager軟件中用到它。這些圖形用戶接口系統(tǒng)的一個(gè)公共特點(diǎn)是多個(gè)窗口或視見(jiàn)區(qū)可以同時(shí)在計(jì)算機(jī)顯示屏上出現(xiàn)。不同的應(yīng)用程序可以并發(fā)地在該計(jì)算機(jī)顯示屏上所顯示的各窗口中運(yùn)行(或者等候用戶的輸入)。此外,單個(gè)應(yīng)用程序可生成許多不同的窗口。用戶可以用鼠標(biāo)器或其他輸入設(shè)備在不同的窗口之間前后移動(dòng),從而完成多個(gè)不同的任務(wù)。
這些圖形用戶接口系統(tǒng)提供了比諸如DOS等常規(guī)操作系統(tǒng)(它在一個(gè)時(shí)間內(nèi)只能運(yùn)行和顯示一個(gè)應(yīng)用程序)更好的許多優(yōu)點(diǎn);與此同時(shí),這些附加的功能也對(duì)用戶產(chǎn)生新的問(wèn)題。圖形用戶接口系統(tǒng)提供了在計(jì)算機(jī)屏幕上表達(dá)幾乎無(wú)限多個(gè)窗口的能力,但這并不意味著這些幾乎無(wú)限多個(gè)窗口可以在計(jì)算機(jī)屏幕上顯示會(huì)使用戶可以看得見(jiàn)。事實(shí)上,這些窗口絕大多數(shù)完全可能被其他窗口局部地或完全地掩蓋掉。對(duì)于少至兩個(gè)窗口的場(chǎng)合,這個(gè)問(wèn)題便會(huì)出現(xiàn)。但當(dāng)使用更多的窗口時(shí),這個(gè)問(wèn)題將更為突出。
當(dāng)某些窗口被部分地或完全地掩蓋掉時(shí),用戶很難成功地在不同窗口之間前后移動(dòng),因?yàn)橛脩舨蛔鞔罅康呐Φ脑挘悴荒苷业剿鼈冎械脑S多窗口。由于圖形用戶接口系統(tǒng)的這種局限性嚴(yán)重地限制了真正并發(fā)使用的、或者通過(guò)窗口同時(shí)表示的任務(wù)或應(yīng)用程序的數(shù)目,勢(shì)必會(huì)使擁有這一系統(tǒng)的真正目的變成無(wú)效。
本發(fā)明的主要目的是提高圖形用戶接口系統(tǒng)的性能。
本發(fā)明的另一目的是給用戶提供更有效的方式去找出部分地或完全被掩蓋的窗口。
本發(fā)明的再一個(gè)目的是在計(jì)算機(jī)顯示屏上醒目地顯示出窗口,以幫助用戶找出部分地或完全被掩蓋著的窗口。
本發(fā)明的還有一個(gè)目的是在計(jì)算機(jī)顯示屏上按比例地顯示窗口,以幫助用戶找出部分地或完全被掩蓋的窗口。
上述這些及其他目的是以這里所公開(kāi)的、計(jì)算機(jī)顯示屏上按比例顯示窗口的方法及裝置來(lái)實(shí)現(xiàn)的。
這里公開(kāi)一種在計(jì)算機(jī)顯示屏上醒目地及按比例顯示窗口的方法及裝置。在顯示屏上出現(xiàn)的每一窗口的活動(dòng)(也謂之“聚焦”)時(shí)間是可以監(jiān)控的。一旦收到用戶的命令,較長(zhǎng)時(shí)間活動(dòng)的窗口較之較短時(shí)間活動(dòng)的窗口顯示得更加醒目些。更具體地說(shuō),顯示屏上顯示的窗口的尺寸與每一窗口活動(dòng)著的時(shí)間成正比例。例如,40%活動(dòng)時(shí)間的窗口,其尺寸是指定窗口矩形區(qū)域的40%。長(zhǎng)時(shí)間不活動(dòng)的窗口若其值已超出最低窗口矩形區(qū)域的閾值的話,則作為在該指定窗口區(qū)域之外或之下的圖標(biāo)顯示出來(lái),不再包括在窗口的活動(dòng)性百分率的計(jì)算之中。
按活動(dòng)性1-N的遞降次序來(lái)對(duì)窗口表格進(jìn)行排序,此外N=窗口數(shù)目。窗口的矩形區(qū)域首先分割成兩個(gè)區(qū)域-H1區(qū)域和H2區(qū)域。如果窗口的矩形區(qū)域的寬度大于或等于其高度,則按垂直方式分割矩形區(qū)域;否則按水平方式分割。進(jìn)行這種分割以便使H1區(qū)域與以下比值成正比即第一窗口和第二窗口活動(dòng)的時(shí)間長(zhǎng)度與第一窗口直至第N窗口都活動(dòng)的時(shí)間長(zhǎng)度之比值;這樣一來(lái),使得H2區(qū)域與以下比值成正比即第三窗口至第N窗口都活動(dòng)的時(shí)間長(zhǎng)度與第一窗口直至第N窗口都活動(dòng)的時(shí)間長(zhǎng)度之比值。
在完成這一分割之后,H1區(qū)域被分割成Q1區(qū)域和Q2區(qū)域。如果H1區(qū)域的寬度大于或等于其高度,則按垂直方式分割;否則按水平方式分割。實(shí)現(xiàn)這種分割是為了使Q1區(qū)域與該比值成正比即第一窗口活動(dòng)的時(shí)間長(zhǎng)度與第一及第二窗口活動(dòng)的時(shí)間長(zhǎng)度之比值。
在完成這一分割之后,H2區(qū)域被分割成Q3區(qū)域和Q4區(qū)域。如前一樣,若H2區(qū)域的寬度大于或等于其高度,則按垂直方式分割否則按水平方式分割。實(shí)現(xiàn)這種分割是為了使Q3區(qū)域與該比值成正比即第三窗口活動(dòng)的時(shí)間與第三窗口直至第N窗口都活動(dòng)的時(shí)間長(zhǎng)度之比值。
第一、第二及第三個(gè)最為活動(dòng)的窗口在Q1、Q2和Q3區(qū)域內(nèi)分別顯示。如果只有四個(gè)窗口,則第四個(gè)窗口在Q4區(qū)域內(nèi)顯示。如果多于四個(gè)窗口,則Q4區(qū)域按與該窗口進(jìn)行矩形區(qū)域、H1區(qū)域和H2區(qū)域的分割相同的方式遞歸進(jìn)行分割,若有必要的話。這種分割遞歸地持續(xù)進(jìn)行,一直到用以顯示每個(gè)窗口的區(qū)域其活動(dòng)長(zhǎng)度超過(guò)最低窗口矩形閾值為止。


圖1為本發(fā)明的計(jì)算機(jī)系統(tǒng)的方框圖。
圖2A表示出某一用戶在計(jì)算機(jī)上花了若干分鐘或小時(shí)完成任務(wù)之后,窗口是如何顯示的。
圖2B表示顯示屏的行和列如何能映射為x和y坐標(biāo)。
圖2C-1到2C-4示出了顯示屏的窗口矩形區(qū)域如何按本發(fā)明分割成多個(gè)區(qū)域。
圖2D表示出本發(fā)明的最佳實(shí)施例中,窗口是如何地作比例顯示的。
圖2E表示出本發(fā)明的第一個(gè)其他實(shí)施例中,窗口是如何地作比例顯示的。
圖2F表示出本發(fā)明第二個(gè)其他實(shí)施例中,窗口如何地作醒目但卻是非比例的顯示。
圖2G示出了本發(fā)明第三個(gè)其他實(shí)施例中,窗口是如何地作醒目但卻是非比例的顯示的。
圖3A表示出本發(fā)明的控制數(shù)據(jù)。
圖3B為排序之前本發(fā)明的窗口數(shù)據(jù)。
圖3C為排序之后本發(fā)明的窗口數(shù)據(jù)。
圖4示出了一個(gè)用于設(shè)置用戶修改本發(fā)明的參數(shù)的示范屏幕。
圖5-10為本發(fā)明的流程圖。
圖1為本發(fā)明的計(jì)算機(jī)系統(tǒng)10的方框圖。計(jì)算機(jī)系統(tǒng)10具有顯示器17、鍵盤18及輸入設(shè)備19,它們每個(gè)都聯(lián)至系統(tǒng)單元11。系統(tǒng)單元11包含著與存貯器13、存貯器14以及顯示適配器15相聯(lián)的處理器12,如在圖5-10的流程圖中詳盡地說(shuō)明那樣,處理器12可作適當(dāng)編程以實(shí)施此發(fā)明。存貯器13和存貯器14包含控制數(shù)據(jù)30和窗口數(shù)據(jù)40。
在本最佳實(shí)施例中,計(jì)算機(jī)系統(tǒng)10是IBMPS/2,其中處理器12是Intel80386微處理器。顯示適配器15是IBM8513顯示適配器,顯示器17是IBM8513顯示器。輸入設(shè)備19最好是IBM鼠標(biāo)器,但也可以是跟蹤球、光筆,或其他輸入設(shè)備。磁盤14含有操作系統(tǒng)軟件,最好是帶有PresentationManager的OS/2,但也可以選擇Microsoft的Windows3.0,還有最好是一個(gè)至多個(gè)OS/2應(yīng)用程序,諸如用于PresentationManager的Wordperfect,或者也可以選擇DOS的應(yīng)用程序,諸如用于Windows的MicrosoftWord。當(dāng)運(yùn)行時(shí),這些程序可以部分地或全部地安裝在存貯器13上并由處理器12執(zhí)行。
計(jì)算機(jī)系統(tǒng)10還能夠是另一種類型的計(jì)算機(jī)系統(tǒng),不管它是諸如AppleMacintosh的微計(jì)算機(jī),IBMAS/400的小型計(jì)算機(jī),還是IBM390那樣的主機(jī),都符合本發(fā)明的精神和范圍。此外,計(jì)算機(jī)系統(tǒng)10可以是聯(lián)向諸如IBMAS/400這樣較大型計(jì)算機(jī)的上述微計(jì)算機(jī)。
顯示器17含有窗口21-26。對(duì)于本發(fā)明的目的而言,一個(gè)“窗口”或視見(jiàn)區(qū)可以占據(jù)顯示屏上任何一個(gè)地方,從幾乎是整個(gè)顯示屏幕到顯示屏的一個(gè)非常小的部分,在諸如OS/2的多任務(wù)環(huán)境中或在諸如DOS的單任務(wù)環(huán)境中,可以聯(lián)同其他窗口一起顯示。當(dāng)窗口的數(shù)目增加時(shí),很可能許多窗口會(huì)部分地或全部地被其他窗口掩蓋住,如圖1顯示器17上所示。
圖2A更詳盡地表示圖1的顯示器17上的窗口21-26。圖2A是示范性的,表明用戶在計(jì)算機(jī)上完成若干分鐘或小時(shí)的任務(wù)之后,顯示屏幕會(huì)呈示出什么樣子。具體地說(shuō),我們的用戶正用計(jì)算機(jī)作某些年終稅務(wù)計(jì)劃工作。在屏幕上顯示出六個(gè)窗口的同時(shí),顯示屏上任何地方還可能存在著一個(gè)至幾十個(gè)窗口。注意,窗口25較之其他窗口有更黑的外框,并且沒(méi)有被任何其他一個(gè)窗口所疊合。這對(duì)用戶表明,窗口25是一個(gè)活動(dòng)著的窗口,或者認(rèn)為處于“聚焦”狀態(tài)。當(dāng)某一窗口是“聚焦”時(shí),用戶可以進(jìn)行輸入,或者整理該窗口所含的數(shù)據(jù)。
窗口21,22,23,24及26至少有一部分被其他窗口所掩蓋,窗口22完全被掩蓋住了。窗口24和26是絕大部分被掩蓋的-如果這兩窗口內(nèi)所含的數(shù)據(jù)顯示給用戶的話,那也只是一點(diǎn)點(diǎn)。
我們虛擬的用戶,TammyTaxpayer在圣誕節(jié)前周六清晨開(kāi)始她的年終稅務(wù)計(jì)劃工作(她在八月份已經(jīng)完成她的圣誕節(jié)購(gòu)物)Tammy同時(shí)使用若干應(yīng)用程序幫助她作稅務(wù)計(jì)劃。她把數(shù)據(jù)安排在Excel和Lotus上,在Wordperfect上寫信給IRS,寫一備忘錄給她的會(huì)計(jì)師,在Quicken上獲取她的財(cái)政資料,并把她的稅務(wù)數(shù)據(jù)輸入到TurboTax。她也用到稱之為FileManager的OS/2應(yīng)用程序,此程序幫助Tammy管理OS/2上的目錄及文件的其他方面。
Tammy隨意從一個(gè)窗口跳到另一個(gè)窗口-這是她特別喜歡的PresentationManager的一個(gè)特點(diǎn),并且她最近化了許多時(shí)間來(lái)整理窗口25中的數(shù)據(jù)(也就是用Lotus1-2-3上的記錄頁(yè))。但現(xiàn)在Tammy希望返回到花費(fèi)了幾乎一早上的程序,即Quicken。Tammy快速地掃描了一下顯示器,只是發(fā)現(xiàn)含有Quicken的窗口在何處并不是很容易一目了然的。她可以看見(jiàn)窗口21,23和25足夠大的范圍,從而知道這些窗口內(nèi)并不含有Quicken。但是,Quicken可能處于部分地被掩蓋的窗口24和26中;或者處在完全被掩蓋的窗口22之內(nèi)。Tammy可以利用反覆試驗(yàn)法并觀察每個(gè)窗口(方法是移動(dòng)鼠標(biāo)指針到被掩蓋的窗口上,按兩個(gè)鼠標(biāo)器的按鈕使該窗口活動(dòng)起來(lái)),但這種方法是極費(fèi)力的,當(dāng)屏上有許多窗口時(shí)或一個(gè)或多個(gè)窗口被完全掩蓋時(shí),這方面不能生效。
幸而對(duì)Tammy而言,她的計(jì)算機(jī)系統(tǒng)是本發(fā)明的計(jì)算機(jī)系統(tǒng)10。因此,她可以快速地重新規(guī)定她的窗口尺寸,旨在使這些窗口顯示時(shí),其尺寸與它們活動(dòng)或“聚焦”的時(shí)間長(zhǎng)度成正比。如后面詳細(xì)討論那樣,計(jì)算機(jī)系統(tǒng)10的處理器12適于編程以執(zhí)行流程圖5-10,它控制著每個(gè)窗口存在于顯示屏上活動(dòng)或“聚焦”的時(shí)間量。當(dāng)Tammy選擇顯示窗口矩形模式時(shí),較長(zhǎng)時(shí)間活動(dòng)著的窗口顯示得比活動(dòng)時(shí)間較短的窗口更為醒目?;顒?dòng)窗口顯示得更為醒目的實(shí)際方法取決于Tammy對(duì)顯示窗口矩形模式所選定的各參數(shù)值。
倘若Tammy使該顯示窗口矩形模式的參數(shù)值能達(dá)到按比例和最佳配合,則她用的是本發(fā)明的最佳實(shí)施例,且顯示屏17如圖2D所示。計(jì)算機(jī)系統(tǒng)10從Tammy今天開(kāi)始使用該計(jì)算機(jī)以來(lái),一直監(jiān)視著Tammy的活動(dòng)情況,并且知道她用TurboTax的時(shí)間占40%,Quicken占35%,Excel占10%,Wordper-fect占7%,Lotus1-2-3占5%,F(xiàn)ileManager占3%。如圖2C-1到2C-4所示,計(jì)算機(jī)系統(tǒng)10將指定的窗口矩形區(qū)域分割成與各窗口迄今為止活動(dòng)著的時(shí)間成正比的各區(qū)域。由于參數(shù)實(shí)現(xiàn)了最佳配合,如果每一塊的寬度大于或等于其高度,則該塊按垂直方式分割;否則,按水平方式分割。由于FileManager并未超過(guò)指定的最低窗口尺寸閾值5%,故它沒(méi)有作為窗口顯示出來(lái)。因而,F(xiàn)ileManager作為窗口矩形區(qū)域外的一個(gè)圖象顯示著。在確定其他窗口的比例區(qū)域尺寸時(shí),F(xiàn)ileManager的活動(dòng)時(shí)間不予計(jì)入。
如果Tammy使參數(shù)按比例、但沒(méi)有實(shí)現(xiàn)最佳配合,則她用的是本發(fā)明的第一個(gè)其他實(shí)施例,且顯示屏17如圖2E所示。如前一樣,計(jì)算機(jī)系統(tǒng)10將該指定的窗口矩形區(qū)域分割成與各窗口迄今為止活動(dòng)著的時(shí)間成正比的各區(qū)域。由于沒(méi)有使參數(shù)實(shí)現(xiàn)了最佳配合,所以第一塊是垂直方式分割的,后繼的“子”區(qū)域是按水平方式分割的,然后再是垂直方式,一直到該窗口矩形區(qū)域分割成所要求數(shù)目的窗口區(qū)域。如前一樣,F(xiàn)ileManager的圖標(biāo)形式顯示在該窗口矩形區(qū)域之外。
如果Tammy沒(méi)有實(shí)現(xiàn)按比例的參數(shù)但卻實(shí)現(xiàn)了最佳配合的參數(shù),則她用的是本發(fā)明的第二個(gè)其他實(shí)施例,且顯示屏17如圖2F所示。和前面不一樣,現(xiàn)在計(jì)算機(jī)系統(tǒng)10將該指定窗口矩形區(qū)域分割成四個(gè)相等區(qū)域。由于參數(shù)實(shí)現(xiàn)了最佳配合,所以如果每一塊的寬度大于或等于其高度,則該塊按垂直方式分割,否則,按水平方式分割。如前一樣,F(xiàn)ileManager以圖標(biāo)形式顯示在該窗口矩形區(qū)域之外。
如果Tammy既沒(méi)有使參數(shù)實(shí)現(xiàn)按比例又沒(méi)有實(shí)現(xiàn)最佳配合,則她用的是本發(fā)明的第三個(gè)其他實(shí)施例,且顯示屏17如圖2G所示。計(jì)算機(jī)系統(tǒng)10將該指定窗口矩形區(qū)域分割成四個(gè)相等區(qū)域,由于參數(shù)沒(méi)有實(shí)現(xiàn)最佳配合,所以第一塊是按垂直方式分割的,第二塊是水平方式分割,如此等等一直到該窗口矩形區(qū)域已被分割成所需數(shù)目的各區(qū)域?yàn)橹埂H缜耙粯?,F(xiàn)ileManager以圖標(biāo)形式顯示在該窗口矩形區(qū)域之外。
說(shuō)英語(yǔ)的文化環(huán)境會(huì)認(rèn)為按圖2D-2G從左向右組織起各窗口是最佳的、按所希望的醒目性排序的窗口組織方式,而不論尺寸是否按比例,其他文化環(huán)境會(huì)喜歡從右向左的處理方式。如后所見(jiàn),可將本發(fā)明稍加修改以適應(yīng)這些文化上的差異。
圖3A詳盡地示出了圖1的控制數(shù)據(jù)30。在本最佳實(shí)施例中,控制數(shù)據(jù)30貯存在存貯器14并被讀入到存貯器13內(nèi),如后所計(jì)論那樣。控制數(shù)據(jù)30含有圖5-10流程圖所用到的信息和加以更新的信息,以實(shí)現(xiàn)本發(fā)明的窗口計(jì)時(shí)功能。
ON/OFF標(biāo)志31始終監(jiān)視本發(fā)明的窗口計(jì)時(shí)功能是“開(kāi)”還是“關(guān)”。計(jì)時(shí)器32始終監(jiān)視當(dāng)前系統(tǒng)計(jì)時(shí)器的值。在本最佳實(shí)施例中,計(jì)時(shí)器32有九位數(shù)字值,該值表示計(jì)時(shí)器從開(kāi)始或重新設(shè)置以來(lái)經(jīng)歷的時(shí)間周期數(shù)(由采樣速率33來(lái)確定)。暫停標(biāo)志34始終監(jiān)視該窗口的計(jì)時(shí)功能是否一直暫停著,如后將詳述的那樣。最后事件標(biāo)志36用來(lái)監(jiān)控用戶的活動(dòng)。這些數(shù)據(jù)用來(lái)校核某窗口長(zhǎng)時(shí)間“聚焦”但沒(méi)有用戶活動(dòng)(即喝咖啡,等)的情況,當(dāng)指定的無(wú)活動(dòng)超時(shí)時(shí)間已過(guò)便自動(dòng)地將該窗口計(jì)時(shí)功能暫停。非活動(dòng)超時(shí)標(biāo)志37含有指定的無(wú)活動(dòng)超時(shí)時(shí)間值。保存標(biāo)志38始終監(jiān)視用戶是否希望保存數(shù)據(jù)40。
矩形區(qū)域字段51表示為窗口矩形動(dòng)作而保留的屏幕區(qū)域,如圖2B所示,頭兩個(gè)數(shù)指出了顯示屏左下角為(0,0)時(shí)該矩形區(qū)域右上角的x,y坐標(biāo)值。自然,也可以選擇異于左下角的點(diǎn)為另一個(gè)原點(diǎn)。該最后兩個(gè)數(shù)指出了該矩形區(qū)域右下角的x,y坐標(biāo)值。在本實(shí)施例中,這些坐標(biāo)是以毫米為單位而不是用字符為單位測(cè)定的,所以可維持該顯示器的高度與寬度間的合理的長(zhǎng)寬比。也可以使用其他諸如象素點(diǎn)這樣的測(cè)量單位用。在本最佳實(shí)施例中,顯示器17是IBM8512顯示器,其顯示區(qū)域約200mm寬和155mm高。因而,這個(gè)顯示區(qū)域的左上角x、y坐標(biāo)是(0,155),右下角x,y坐標(biāo)是(200,0)。在圖2B所示的例子的顯示屏中,示出了矩形區(qū)域62,其左上角的坐標(biāo)為(0,140),右下角的坐標(biāo)為(200,0)。因而,控制數(shù)據(jù)30的矩形區(qū)域字段51將包含以下數(shù)據(jù)0,140,200,0。非矩形區(qū)域61在顯示屏上為各圖標(biāo)及其他非矩形應(yīng)用而保留。
字段52含有比例矩形是ON還是OFF的指示值。如果字段52是ON,則本發(fā)明根據(jù)該窗口活動(dòng)的時(shí)間長(zhǎng)度按比例分割其矩形區(qū)域。如果字段52是OFF,本發(fā)明便將該矩形區(qū)域分割成四個(gè)相等象限,然后相續(xù)地分割第四象限,一直到用以顯示每個(gè)窗口的區(qū)域其活動(dòng)長(zhǎng)度超過(guò)最低窗口矩形閾值為止。在本最佳實(shí)施例中,這個(gè)字段是開(kāi)(ON)。
字段53包含著最佳配合是ON還是OFF的指示。如果字段53是ON,當(dāng)塊的寬度大于或等于其高度時(shí),本發(fā)明將該塊按垂直方式分割,當(dāng)塊的寬度小于高度時(shí),按水平方式分割。如果字段53是OFF,本發(fā)明將在塊的垂直分割和水平分割之間交替進(jìn)行分割。在本最佳實(shí)施例中,這個(gè)字段是ON。
字段54含有最低矩形百分率值的指示。其活動(dòng)值低于最低矩形百分率值的窗口將以圖標(biāo)而不是以窗口形式顯示。這樣做是為了使窗口不致變得小到不可讀或不可用。例如,如果某窗口在1000個(gè)計(jì)時(shí)周期中有30個(gè)計(jì)時(shí)周期是活動(dòng)的(或3%的時(shí)間),在字段54內(nèi)指定最低矩形百分率值是5%時(shí),此窗口作為圖標(biāo)顯示出來(lái)。注意,圖標(biāo)是在該窗口矩形區(qū)域以外的地方顯示的,或是占用屏幕其他可用空間,或是當(dāng)無(wú)空間可用時(shí)處在該窗口矩形區(qū)域的下面。
圖3B詳盡地示出了圖1的窗口數(shù)據(jù)40。在本最佳實(shí)施例中,作為用戶的選擇,窗口數(shù)據(jù)40存在存貯器14內(nèi)并被讀進(jìn)存貯器13,如后面討論的那樣。窗口數(shù)據(jù)40含有圖5-10流程圖所用到的和加以更新的信息,以完成本發(fā)明的窗口計(jì)時(shí)功能及窗口矩形功能。窗口數(shù)據(jù)排列在列41至列44內(nèi)。當(dāng)本發(fā)明的窗口計(jì)時(shí)功能處在ON時(shí),在某時(shí)間點(diǎn)還活動(dòng)著的每一個(gè)打開(kāi)的窗口都包含在存貯器13的窗口數(shù)據(jù)40內(nèi)。列41包含著這些窗口的標(biāo)題及其他標(biāo)識(shí)符。列42含有每個(gè)窗口最后一次被置在“聚焦”時(shí)的計(jì)時(shí)器32的值。列43含有在窗口數(shù)據(jù)40中每一個(gè)窗口處在“聚焦”時(shí)的時(shí)間周期的總數(shù)。列44含有由圖8-9流程圖所確定的、被顯示的窗口左上角和右下角的x、y坐標(biāo)值。
圖3C表出了以活動(dòng)性的降序排序之后的窗口數(shù)據(jù)。
圖4表出了窗口計(jì)時(shí)功能參數(shù)。這些參數(shù)在正常狀態(tài)下被賦于隱含值,但根據(jù)可能的修改的需要,可以向用戶顯示。第一個(gè)參數(shù)詢問(wèn)窗口計(jì)時(shí)功能應(yīng)該是開(kāi)還是關(guān)。因?yàn)闀?huì)存在這種情況,即用戶寧愿窗口以更常規(guī)的方式運(yùn)行。下一個(gè)參數(shù)是采樣速率。這允許用戶控制窗口計(jì)時(shí)功能的時(shí)間刻度(granularity)的大小。下一個(gè)參數(shù)規(guī)定了非活動(dòng)超時(shí)周期值。再下一個(gè)參數(shù)詢問(wèn)用戶是否希望將窗口計(jì)時(shí)功能暫停。這個(gè)參數(shù)可以通過(guò)圖4所示的屏幕來(lái)選擇,或者可以設(shè)置特定的鍵序?qū)⑦@個(gè)參數(shù)置成“開(kāi)”或“關(guān)”。這個(gè)參數(shù)會(huì)是非常有用的,它可以將在浴室內(nèi)的休息及其他中斷引起的影響減到最小。接著的參數(shù)詢問(wèn)在這一次計(jì)算時(shí)間生成的窗口數(shù)據(jù)40是否要保留到下一次。如果是,當(dāng)窗口關(guān)閉時(shí),窗口數(shù)據(jù)40由存貯器13寫入到存貯器14中去。接著的參數(shù)詢問(wèn)是否應(yīng)該復(fù)位把窗口計(jì)時(shí)功能復(fù)位。有時(shí)是希望在計(jì)算中間“起動(dòng)”,特別是如果用戶現(xiàn)在正完成和以前所作的完全無(wú)關(guān)的任務(wù)。如果用戶指明窗口計(jì)時(shí)應(yīng)該復(fù)位,則所有窗口開(kāi)始刷新,如它們?cè)诖似陂g從未活動(dòng)起來(lái)過(guò)一樣。
下一個(gè)參數(shù)提示用戶所希望的矩形區(qū)域左上角和右下角的x,y坐標(biāo)。再下一個(gè)參數(shù)查詢比例矩形應(yīng)該是開(kāi)還是關(guān)。再一個(gè)參數(shù)閱最佳配合應(yīng)該是開(kāi)還是關(guān)。最后的參數(shù)讓用戶指明最低矩形百分值。
現(xiàn)在詳細(xì)描述如流程圖5-10所示的本發(fā)明的工作過(guò)程。現(xiàn)參照?qǐng)D5,程序塊101將控制數(shù)據(jù)30從存貯器14裝入存貯器13,程序塊102將計(jì)時(shí)器32初始化,以及把控制數(shù)據(jù)30里的最后事件標(biāo)志36初始化。程序塊103啟動(dòng)計(jì)時(shí)器32。這點(diǎn)是通過(guò)起始執(zhí)行圖7的流程圖來(lái)完成的。現(xiàn)參見(jiàn)圖7,程序塊201詢問(wèn)是否從圖5A的程序塊198收到什么指示來(lái)停止此計(jì)時(shí)器。如果是,程序?qū)⒃诔绦驂K299結(jié)束。如果不是,程序塊202等候控制數(shù)據(jù)30中的采樣速率33經(jīng)過(guò)。程序塊205查看在控制數(shù)據(jù)30中的暫停標(biāo)志34是否為FALSE。如果此標(biāo)志不是FALSE(在本最佳實(shí)施例中為TRUE或TRUE2),這就表示窗口計(jì)時(shí)功能應(yīng)該暫停。倘若用戶指明她希望暫停采樣,或者非活動(dòng)超時(shí)周期已經(jīng)終止,如后所詳細(xì)討論的那樣,這一條件是會(huì)存在的。如果不是,控制回路流程返回程序塊201。如果程序塊205指明暫停乃是FALSE,程序塊208將控制數(shù)據(jù)30中的計(jì)時(shí)器32增加1,以表明又經(jīng)歷了一個(gè)計(jì)時(shí)器周期。
重新參照?qǐng)D5A,在程序塊103啟動(dòng)該計(jì)時(shí)器后,程序塊110查看這里是否有窗口事件要處理。在本最佳實(shí)施例中,“窗口事件”是指由PresentationManager生成的任一事件,諸如將數(shù)據(jù)輸入到窗口,移動(dòng)文本光標(biāo)或鼠標(biāo),在滾動(dòng)條上按動(dòng)等等,以及本發(fā)明所生成的事件。如果程序塊110的回答是否定,則程序塊112查看是否所有的窗口都關(guān)閉了。如果是,程序塊198使計(jì)時(shí)器32停止并將控制數(shù)據(jù)30寫入存貯器14,其條件是保存標(biāo)志38為ON。然后,本程序在程序塊199終止。如果程序塊112指出并沒(méi)有關(guān)閉所有的窗口,則程序塊115查看控制數(shù)據(jù)30中的非活動(dòng)超時(shí)周期37是否已終止。這點(diǎn)可以將最后事件36從計(jì)時(shí)器32中減去,把此結(jié)果乘以采樣速率,再被60除。如果這個(gè)結(jié)果大于非活動(dòng)超時(shí)37中的值,則給予程序塊115的回答是肯定的,于是程序塊118自動(dòng)地產(chǎn)生一個(gè)暫停的窗口事件。在任一種事件中,控制流程均返回程序塊110。
當(dāng)程序塊110指出這里有一窗口事件要處理,程序塊104就查看這是否是開(kāi)啟窗口事件。如果是,這個(gè)窗口在程序塊106中被賦于一個(gè)新名字(即TurboTax2)。無(wú)論是有任何這種數(shù)據(jù)被從前一次時(shí)間保存下來(lái)還是保存標(biāo)志為ON,程序塊107均會(huì)將記錄中的這個(gè)窗口從存貯器14裝入存貯器13中去。然后,在程序塊108完成正常的窗口處理過(guò)程。
程序塊121查看這是否是一窗口關(guān)閉事件。如果是,比較合適的是將此窗口從存貯器13中的窗口數(shù)據(jù)40里撤除,旨在使用戶在選擇窗口顯示模式時(shí)該窗口不再重現(xiàn)。此功能由程序塊122完成。程序塊122把此窗口記錄資料在保存標(biāo)志38為ON時(shí),寫到存貯器14中去。程序塊123接著完成該事件的正常窗口處理工作。
如果程序塊121被作否定回答,則程序塊120就問(wèn)這個(gè)事件是否是一件要作“聚焦”的事件。在本最佳實(shí)施例中,不論此時(shí)某窗口是作成活動(dòng)的,或是置入“聚焦”狀態(tài),“要聚焦”事件均由PresentationManager生成。如果程序塊120被肯定回答,程序塊125便把進(jìn)入聚焦?fàn)顟B(tài)的窗口寄存起來(lái)。這寄存乃是啟動(dòng)圖6的流程來(lái)完成的。
現(xiàn)參見(jiàn)圖6,程序塊301查看在窗口數(shù)據(jù)中ON/OFF標(biāo)志31是否為開(kāi)。如果不是,此程序立刻在程序塊399內(nèi)終止。如果該標(biāo)志是開(kāi),程序塊303會(huì)從控制數(shù)據(jù)30中的計(jì)時(shí)器32獲得當(dāng)前時(shí)間值。程序塊304查看窗口數(shù)據(jù)40中是否存在被置入聚焦?fàn)顟B(tài)的窗口。如果沒(méi)有,則程序塊306在窗口數(shù)據(jù)40中為此窗口生成一個(gè)新的記錄。在Infocus(聚焦)列42中置零,在total(總數(shù))列43中及region(區(qū)域)列44中也置零。如果對(duì)程序塊304的回答為否定,程序塊308將使用在窗口數(shù)據(jù)40中這個(gè)被置成“聚焦”窗口的相關(guān)窗口記錄資料。
程序塊310查看這是一件“要聚焦”的窗口事件還是一件“散焦”窗口事件。既然我們的事件是一件“要聚焦”事件,程序塊315把計(jì)時(shí)器32當(dāng)前的值從控制數(shù)據(jù)30放入到這個(gè)窗口的Infocus(聚焦)列42里,程序在程序塊399終止。
再參照?qǐng)D5A,通過(guò)啟動(dòng)圖6的流程,程序塊125把進(jìn)入聚焦的窗口寄存之后,程序塊126完成這一事件的正常窗口處理工作。在本最佳實(shí)施例中,PresentationManager把選定的窗口聚焦。
如程序塊120得到否定回答,程序塊130查問(wèn)這是否是一件散焦窗口事件。在本最佳實(shí)施例中,每當(dāng)某一窗口由于另一窗口被聚焦而不再活動(dòng)時(shí),PresentationManager便生成一“散焦”事件。如程序塊130得到肯定回答,則程序塊135寄存這個(gè)散焦的窗口。如已討論過(guò)的那樣,這一寄存過(guò)程是通過(guò)再次啟動(dòng)圖6的流程而完成的,例外之處是程序塊310(圖6)確定這是一散焦事件且不由程序塊315而由程序塊320來(lái)執(zhí)行。程序塊320對(duì)此窗口,更新其窗口數(shù)據(jù)40中總數(shù)列43的值以指示該窗口曾活動(dòng)了多久。從控制數(shù)據(jù)30中的計(jì)時(shí)器32的當(dāng)前值中減去此窗口在聚焦列42所含的值。其結(jié)果再與該窗口在總數(shù)列43的當(dāng)前值相加,將得到的相加和放在此窗口總數(shù)列43之中。
再參見(jiàn)圖5A,通過(guò)啟動(dòng)圖6的流程,程序塊135將散焦的窗口寄存之后,程序塊126完成這一事件的正常窗口處理工作。在本最佳實(shí)施例中,PresentationManager把落選的窗口的聚焦取消。
如果程序塊130作否定回答,150(圖5B)查看是否已生成了一窗口暫停事件。這種事件可以由圖5A的程序塊118(超時(shí)周期終止)生成,或是如用戶指明在圖4菜單中的計(jì)時(shí)作用應(yīng)該暫停而生成。如果此事件由用戶生成,151把控制數(shù)據(jù)30中的暫停標(biāo)志34設(shè)成TRUE。如果此事件由程序塊118生成,程序塊151把控制數(shù)據(jù)30中的暫停標(biāo)志34設(shè)成TRUE2。在任一種情況中,這均會(huì)造成圖7的獨(dú)立執(zhí)行流程圖的程序塊205得到否定的回答,從而執(zhí)行程序塊208。
再參見(jiàn)圖5B,如果程序塊150是被否定的回答,則程序塊155查看是否生成了一個(gè)窗口恢復(fù)事件。這種事件可以由圖10的程序塊1050生成,(超時(shí)周期終止,但用戶現(xiàn)在已完成了由用戶操作形成的某一窗口事件),或者如用戶指明在圖4的菜單中的計(jì)時(shí)作用應(yīng)該暫停而生成。在任一情況下,程序塊156均把控制數(shù)據(jù)30中的暫停標(biāo)志34置成FALSE。這造成圖7的獨(dú)立執(zhí)行流程圖的程序塊205得到肯定回答,從而執(zhí)行程序塊208。
重新回到圖5B,如果程序塊155得到否定的回答,則程序塊160查看是否生成了一窗口復(fù)位事件。如果用戶指明圖4的菜單中的計(jì)時(shí)作用應(yīng)該復(fù)位,則此事件將生成。程序塊161通過(guò)窗口數(shù)據(jù)40中的所有窗口作循環(huán),程序塊162將Infocus(聚焦)列42、total(總數(shù))列43以及region(區(qū)域)列44的值置為零。若窗口數(shù)據(jù)40中沒(méi)有窗口記錄資料要作處理,則程序塊161被作否定回答,于是控制流程轉(zhuǎn)向程序塊163。
程序塊163查看是否生成了窗口保存事件。如果用戶改變了圖4菜單中的保存參數(shù)值,就會(huì)生成這一事件。如果產(chǎn)生這一改變,則程序塊164把控制數(shù)據(jù)30中的保存標(biāo)志38按用戶的指示置成ON或者OFF。
程序塊165查看是否生成了一個(gè)把窗口計(jì)時(shí)作用關(guān)閉的事件。如果用戶指明在圖4菜單中的計(jì)時(shí)作用應(yīng)該關(guān)閉,則這一事件就會(huì)生成。倘若如此,程序塊166把控制數(shù)據(jù)30中的ON/OFF標(biāo)志31置成OFF。程序塊168通過(guò)窗口數(shù)據(jù)40中的所有窗口作循環(huán),程序塊169將Infocns(聚焦)列42,total(總數(shù))列43的值置成零。若窗口數(shù)據(jù)40中沒(méi)有窗口記錄資料要作處理,則程序塊162得到否定回答,于是控制流程轉(zhuǎn)向,程序塊170。
程序塊170查看是否生成了一個(gè)把窗口計(jì)時(shí)作用開(kāi)啟的事件。如果用戶指明在圖4菜單中的計(jì)時(shí)作用應(yīng)該開(kāi)啟,則這一事件就會(huì)生成。倘若這樣的話,程序塊171把控制數(shù)據(jù)30中的ON/OFF標(biāo)志31置成ON。在任一種情況下,控制流程均轉(zhuǎn)向程序塊175。
程塊175查看是否生成了一個(gè)設(shè)置窗口的采樣速率事件。如果用戶在圖4菜單中填入采樣速率的數(shù)值,則這一事件就會(huì)生成。倘若這樣的話,程序塊176把控制數(shù)據(jù)30中的采樣速率字段33置入用戶所設(shè)置的數(shù)值。
程序塊177查看是否生成了一個(gè)定義窗口矩形區(qū)域的事件。如果用戶在圖4菜單中填入了此矩形區(qū)域的左上角及右下角的x、y坐標(biāo)值,則這一事件就會(huì)生成。倘若這樣的話,程序塊178便把用戶設(shè)定的該矩形區(qū)域坐標(biāo)值輸入到控制數(shù)據(jù)30中的字段51內(nèi)。
程序塊180查看是否生成了一個(gè)開(kāi)啟比例矩形窗口的事件。如果用戶在圖4菜單中表明應(yīng)該開(kāi)啟窗口矩形模式的比例矩形參數(shù),則這一事件就會(huì)生成。倘若這樣的話,程序塊181把控制數(shù)據(jù)30中的比例矩形標(biāo)識(shí)52置成ON。
程序塊182查看是否生成了一個(gè)將比例矩形窗口關(guān)閉的事件。如果用戶在圖4菜單中表明應(yīng)該開(kāi)啟窗口矩形模式的比例矩形參數(shù),則這一事件就會(huì)生成。倘若這樣的話,程序塊181把控制數(shù)據(jù)30中的比例矩形標(biāo)識(shí)52置成ON。
程序塊182查看是否生成了一個(gè)將比例矩形窗口關(guān)閉的事件。如果用戶在圖4菜單中表明應(yīng)該關(guān)閉窗口矩形模式的比例矩形參數(shù),則這一事件就會(huì)生成。若如此,程序塊183把控制數(shù)據(jù)30中的比例矩形標(biāo)識(shí)52置成OFF。
程序塊185查看是否生成了一個(gè)開(kāi)啟最佳配合窗口的事件。如果用戶在圖4的菜單中表明應(yīng)該開(kāi)啟窗口矩形模式的最佳配合的參數(shù)則這一事件就會(huì)生成。如果這樣的話,程序塊186把控制數(shù)據(jù)30中的最佳配合標(biāo)識(shí)53置成ON。
程序塊187查看是否生成了一個(gè)把最佳配合窗口關(guān)閉的事件。如果用戶在圖4的菜單中表明應(yīng)該關(guān)閉窗口矩形模式的最佳配合的參數(shù),則這一事件就會(huì)生成。如果這樣的話,程序塊183把控制數(shù)據(jù)30中的最佳配合標(biāo)識(shí)53置成OFF。
程序塊190查看是否生成了一個(gè)設(shè)置最低矩形百分率窗口的事件。如果用戶在圖4的菜單中填入該最低矩形百分率的數(shù)值,則這一事件就會(huì)生成。這時(shí),程序塊191把控制數(shù)據(jù)30中的最低矩形百分率字段54置成用戶所設(shè)定的值。
程序塊195查看是否有別的窗口事件要處理。如果是這樣的話,程序塊196對(duì)此事件實(shí)現(xiàn)正常窗口處理工作。在任一情況下,控制回路的流程返回到圖5A的程序塊115。
圖5A-5B及圖7的流程圖在互相獨(dú)立地執(zhí)行時(shí),圖8的流程圖也在處理器12內(nèi)獨(dú)立地執(zhí)行。這一流程圖監(jiān)控著用戶的輸入,看一下用戶是否希望利用本發(fā)明的窗口計(jì)時(shí)功能來(lái)重新排列其窗口,如圖2D-2G所示。現(xiàn)在參見(jiàn)圖8,程序塊401查看用戶是否已選擇了顯示窗口矩形模式。如果程序塊401確定該顯示窗口矩形模式?jīng)]有選上,則程序塊403查看是否所有的窗口都已關(guān)閉。如果這樣,程序便在程序塊499終止。如果不是,程序回路回到程序塊401再次查看是否已選擇了顯示窗口矩形模式。在本最佳實(shí)施例中,由某一指定的鍵序來(lái)選擇該顯示窗口模式。例如,可以用ALT-W序列。作為替代,也可以使用鼠標(biāo)器按紐的組合或者用戶由菜單,或是在該顯示屏上按動(dòng)圖標(biāo)或按紐的表示來(lái)選擇此模式。在任何事件中,只要程序塊401確定此顯示窗口矩形模式已被選定,程序塊407便把正在聚焦的窗口的總數(shù)列43的值設(shè)為計(jì)時(shí)器32的當(dāng)前值減去聚焦列42中的值,然后把這結(jié)果加入到目前的總數(shù)列43的值中去。這一功能和圖6程序塊320要實(shí)現(xiàn)的功能一樣,且該功能保證了用的是正在聚焦窗口的最及時(shí)的信息。程序塊407也把這窗口的聚焦列42的值設(shè)成是計(jì)時(shí)器32的當(dāng)前值。
程序塊901以常規(guī)方式清除了所有數(shù)據(jù)顯示。程序塊903按total(總數(shù))列43中的值把窗口數(shù)據(jù)40中的窗口記錄資料按活動(dòng)性的次序由最高到最低排序。因而,最活動(dòng)的窗口現(xiàn)在將處在窗口數(shù)據(jù)40頂部成為第一個(gè)記錄,活動(dòng)性最差的窗口成為窗口數(shù)據(jù)40底部的最后一個(gè)記錄。程序塊905查核窗口數(shù)據(jù)40的窗口記錄,看看是否有哪個(gè)窗口的活動(dòng)性低于最低閾值百分率值。完成這一點(diǎn)是用以下方法把每個(gè)窗口在窗口數(shù)據(jù)40中總數(shù)列43內(nèi)的數(shù)值,除以控制數(shù)據(jù)30未作鑒別情況下到達(dá)每個(gè)窗口均已活動(dòng)的百分率時(shí)所有活動(dòng)窗口的總時(shí)間,再乘以100,然后把這個(gè)值與含在控制數(shù)據(jù)30的字段54中的最低閾值百分率作比較。對(duì)于每個(gè)已由程序塊905判定處在閾值最低百分率以下的窗口,程序塊905把“ICON”(圖標(biāo))置入控制數(shù)據(jù)40的區(qū)域列44之內(nèi)以備后用??刂屏鞒倘缓筠D(zhuǎn)向程序塊1100,在那里調(diào)用圖9A的計(jì)算窗口矩形區(qū)域子程序。把所有處理中的窗口按活動(dòng)性排序的窗口表格傳送到該子程序。
圖9A的計(jì)算窗口矩形子程序?qū)γ恳粋€(gè)在region(區(qū)域)列44中已沒(méi)有“ICON”值的窗口,計(jì)算并填入窗口數(shù)據(jù)40中的該列的值。程序塊1101通過(guò)分配四個(gè)象限的權(quán)而開(kāi)始,第一象限(Q1wt)被給予窗口數(shù)據(jù)40中第一個(gè)窗口記錄(即最活動(dòng)的窗口)在總數(shù)列43中含有的值。類似地,第二象限(Q2wt)被給予窗口數(shù)據(jù)40中第二個(gè)窗口記錄(即次最活動(dòng)窗口)在總數(shù)列43中含有的值。第三象限(Q3wt)被賦于窗口數(shù)據(jù)40中第三個(gè)窗口記錄在總數(shù)列43中含有的值。第四象限(Q4wt)被賦于窗口數(shù)據(jù)40中其余所有窗口在總數(shù)列43中的值之和。注意,如果某窗口在字段44中存在“ICON”表示,程序塊1101則不把在總數(shù)列43中的值用于任何一個(gè)象限。反之,則將“0”加入到這些權(quán)之中去?!?”也用于不存在任一窗口時(shí)的權(quán)。
利用我們?cè)诖翱跀?shù)據(jù)40的示范數(shù)據(jù)(如圖3C所示的排序),程序塊1101分別把權(quán)400,350,100和120分配給Q1wt,Q2wt,Q3wt和Q4wt。Q4wt是把WordPerfect及Lotus1-2-3在總數(shù)列43中的值相加而得到的(70+50)。因?yàn)槌绦驂K905判定該窗口沒(méi)有超過(guò)最低閾值百分率,于是總數(shù)列43中FileManager的數(shù)值(30)則由0代替被加入到Q4wt中去,并把“ICON”放到列44中去。
程序塊1105把Q1wt和Q2wt的權(quán)組合起來(lái)確定出H1wt,再把Q3wt和Q4wt的權(quán)組合起來(lái)確定H2wt。在我們的例子中,H1wt=750(400+350),和H2wt=220(100+120)。然后在程序塊1200A中第一次調(diào)用圖9B的分塊子程序1200。以下的輸入?yún)?shù)被傳到該子程序矩形區(qū)域坐標(biāo)(在我們例子中為0,140,200,0,參見(jiàn)圖2B),H1wt(750),H2wt(120)。輸出參數(shù)區(qū)域H1和區(qū)域H2也傳向子程序1200。子程序1200分割該指定塊(矩形區(qū)域),并把它將該塊分割出的兩個(gè)區(qū)域,即區(qū)域H1及區(qū)域H2的左上角和右下角的x,y坐標(biāo)值傳回來(lái)。
現(xiàn)在參見(jiàn)圖9B,程序塊1201計(jì)算來(lái)自圖9A作為第一個(gè)輸入?yún)⒘總鱽?lái)的該塊的寬度和高度。將該塊的右下角x坐標(biāo)值(本例中是200)減去該塊的左上角x坐標(biāo)(本例中是0),來(lái)計(jì)算寬度。將該塊的左上角的y坐標(biāo)(本例中是140)減去該塊的右下角的y坐標(biāo)(本例中是0)來(lái)計(jì)算高度。因而,程序塊1201判定了我們這一塊的寬度是200,高度是140。程序塊1205把這一塊所分割成的兩個(gè)區(qū)域的x,y坐標(biāo)初始化為與該塊自身的x,y坐標(biāo)相同的值。在本例中,兩個(gè)區(qū)域均有左上角(UL)x,y坐標(biāo)值(0,140)以及右下角(LR)x,y)坐標(biāo)值(200,0)。
程序塊1210詢問(wèn)作為輸入?yún)⒘總魅氲膚t1+wt2是否大于0。如果不是,便不將該塊分割成兩個(gè)區(qū)域,原因是沒(méi)有窗口要放入這些塊內(nèi),于是該子程序便返回到它被程序塊1298所調(diào)用的地方。如果程序塊1210得到肯定答復(fù),則至少有一個(gè)窗口放置入一個(gè)區(qū)域,控制流程繼續(xù)通向程序塊1215。
程序塊1215查看在控制數(shù)據(jù)30中的比例矩形標(biāo)識(shí)52是否為開(kāi)(ON),如果是,程序塊1220查看控制數(shù)據(jù)30中的最佳配合標(biāo)識(shí)53是否為開(kāi)(ON)。如果是,正如本最佳實(shí)施例的情況,則控制流程通向程序塊1230。程序塊1230查看該塊的寬度是否大于或等于其高度。如果是,則將此塊作垂直分割看起來(lái)更好些(并且是“最佳配合”)。這點(diǎn)由程序塊1235完成。程序塊1235把區(qū)域1的右下角(LR)x坐標(biāo)以及區(qū)域2的左上角(UL)x坐標(biāo),設(shè)置成等于被分割塊的ULx坐標(biāo),再加上被乘以因子wt1/(wt1+wt2)的該塊的寬度。圖2C-1表示出了這種情況。程序塊1235通過(guò)改變區(qū)域1的LRx坐標(biāo)值,從200(在程序塊1205中被初始化而得)變起,把該塊(矩形區(qū)域)分割如下Region1LRx=0+(200×750/(750+220))=155。Region2ULx坐標(biāo)也變成155。注意,區(qū)域1的LRx及區(qū)域2的ULx的坐標(biāo)值155實(shí)際上是從154、63918四舍五入而得到的,這是因?yàn)樵赑sesentationManager之下,窗口坐標(biāo)正常情況下必須表示成整數(shù)。這種四舍五入意味著窗口區(qū)域是成比例值加減0.5mm的舍入誤差,對(duì)于本發(fā)明的目的而言,這將被認(rèn)為和“比例”完全一樣。在程序塊1235執(zhí)行完后,子程序在程序塊1299返回到圖9A的程序塊1200B,將區(qū)域H1和區(qū)域H2的坐標(biāo)作為輸出參數(shù)傳回。
再參見(jiàn)圖9A,圖9B的分塊子程序1200在程序塊1200B第二次被調(diào)用,下列輸入?yún)?shù)被傳入到該子程序內(nèi)區(qū)域H1坐標(biāo)(本例中是0,140,155,0,參見(jiàn)圖2C-1),Q1wt(400)和Q2wt(350)。輸出參數(shù)區(qū)域Q1和區(qū)域Q2也被傳向子程序1200。子程序1200把區(qū)域H1分割成區(qū)域Q1和區(qū)域Q2,傳回這兩個(gè)區(qū)域的左上角及右下角的x、y坐標(biāo)。
再參照?qǐng)D9B,如前一樣,程序塊1201計(jì)算從圖9A作為第一個(gè)輸入?yún)?shù)傳過(guò)來(lái)的該塊的高度和寬度。程序塊1201確定區(qū)域H1的寬度是155,高度是140。程序塊1205把這一塊所分割成的兩區(qū)域的x、y坐標(biāo)初始化為與該塊自身的x、y坐標(biāo)相同的值(本例中0,140,155,0)。
控制流程如前通過(guò)程序塊1215、1220和1230,且程序塊1235垂直分割區(qū)域H1。程序塊1235把區(qū)域1的右下角(LR)x坐標(biāo)以及區(qū)域2的左上角(UL)x坐標(biāo)設(shè)置成等于被分塊的ULx坐標(biāo),加上被乘以因子Wt1/(wt1+wt2)的該塊寬度。圖2C-2示出了這種情況。程序塊1235通過(guò)從155(在程序塊1205中被初始化而得)變起,改變區(qū)域1的LRx的坐標(biāo)值,把該塊(區(qū)域H1)分割如下。區(qū)域1LRx=0+(155×400/(400+350))=83。區(qū)域2ULx坐標(biāo)也變成83。在程序塊1235執(zhí)行完后,子程序在程序塊1299返回到圖9A的程序塊1200C,將區(qū)域H1和區(qū)域H2的坐標(biāo)作為輸出參數(shù)傳回。
再參見(jiàn)圖9A,圖9B的分塊子程序在程序塊1200C中第三次被調(diào)用。下列輸入?yún)?shù)被傳入到該子程序內(nèi)區(qū)域H2坐標(biāo)(本例中是155,140,200,0,參見(jiàn)圖2C-2),Q3wt(100)和Q4wt(120)。輸出參數(shù)區(qū)域Q3和區(qū)域Q4也被傳向子程序1200。子程序1200把區(qū)域2分割成區(qū)域Q3和區(qū)域Q4,傳回這兩個(gè)區(qū)域的左上角和右下角的x,y座標(biāo)值。
再參照?qǐng)D9B,如前一樣,程序塊1201計(jì)算從圖9A作為第一個(gè)輸入?yún)?shù)傳過(guò)來(lái)的該塊的高度和寬度。程序塊1201確定區(qū)域2的寬度為45,高度為140。程序塊1205把這一塊將分割成的兩區(qū)域的x、y坐標(biāo)初始化為與該塊自身的x,y坐標(biāo)相同的值(本例中155,140,200,0)。
控制流程如前通過(guò)程序塊1215,1220,但這時(shí)方框1230被否定地回答,原因是區(qū)域H2的寬度小于高度。因此,控制流程通過(guò)程序塊1240把區(qū)域H2水平地分割。程序塊1240把區(qū)域1的右下角(LR)的y坐標(biāo)以及區(qū)域2的左上角(UL)的y坐標(biāo)設(shè)置成等于被分塊的ULy坐標(biāo),減去被乘以因子wt1/(wt1+wt2)的該塊高度。圖2C-3示出了這種情況。程序塊1240通過(guò)從0(在程序塊1205中被初始化而得)變起改變區(qū)域1的LRy的坐標(biāo)值,把該塊(區(qū)域H2)分割如下區(qū)域1的LRy=140-(140×100/(100+120))=76區(qū)域2的ULy坐標(biāo)也變成76。在程序塊1240執(zhí)行完了之后,子程序在程序塊1299返回到圖9A的1115,將區(qū)域Q3及區(qū)域Q4的坐標(biāo)(利用區(qū)域1和區(qū)域2的值)作為輸出參數(shù)傳回。再參見(jiàn)圖9A,程序塊1115把前三個(gè)窗口所計(jì)算得到的坐標(biāo)寫入到窗口數(shù)據(jù)40的區(qū)域字段44中去。在本例中,最活動(dòng)的窗口(TurboTax)的區(qū)域字段44填入了區(qū)域1的坐標(biāo)值0,14083,0。以最活動(dòng)窗口(Quicken)的區(qū)域字段44填入了區(qū)域Q2的坐標(biāo)83,140,155,0。再下一個(gè)最活動(dòng)的窗口(Excel)的區(qū)域字段填入了區(qū)域Q3的坐標(biāo)155,140,200,76。這一情況由圖3C表示出。
程序塊1120詢問(wèn)是否有更多的窗口需要處理。通過(guò)查核傳向子程序1000的窗口表格,去看看是否還有未生成區(qū)域的更多窗口存在著,便可以做到這一點(diǎn)。既然在本例中我們?cè)诖翱诒砀裰杏械谒膫€(gè)及第五個(gè)窗口待處理,程序塊1120就得到肯定的回答。
程序塊1130通過(guò)執(zhí)行程序塊1101,1105,1200A,1200B,1200C,1115和1120,遞歸地重復(fù)著計(jì)算窗口矩形子程序1100。做到這一點(diǎn)的方法是進(jìn)一步把區(qū)域Q4分割成足夠多的區(qū)域,旨在使在窗口數(shù)據(jù)40中對(duì)每一個(gè)窗口均有一個(gè)區(qū)域且其區(qū)域字段44中沒(méi)有“ICON”值。每次調(diào)用子程序1100時(shí),傳向子程序1100的窗口表格只含有對(duì)其不再會(huì)有區(qū)域生成的窗口。在本例中,傳向子程序1100的窗口表格將包括窗口數(shù)據(jù)40中的第四和第五個(gè)窗口,如圖3C所示那樣排序(即WordPerfectMy、TXT和Lotus1-2-3)。如有三個(gè)以上的窗口留在此窗口表格中傳向子程序1100,則程序塊1130會(huì)多次調(diào)用子程序1100,一直到子程序1100最后一次執(zhí)行時(shí)在此窗口表格中只剩下三個(gè)或更少的窗口。
由于在本例窗口表格中只有兩個(gè)窗口傳到子程序1100中去,程序塊1130調(diào)用子程序1100一次。因而,程序塊1101是再次執(zhí)行,對(duì)象限加權(quán)如下Q1wt=70,Q2wt=50,Q3wt=0和Q4wt=0。程序塊1105把這些象限權(quán)組合成H1wt=120,H2wt=0。分塊子程序1200然后在程序塊1200A里再度被調(diào)用。將下列輸入?yún)?shù)傳向此子程序區(qū)域Q4的坐標(biāo)值(本例中為155、76,200,0,參見(jiàn)圖2C-3),H1wt(120)和H2wt(0)。輸出參數(shù)區(qū)域Q4-H1及區(qū)域Q4-H2也傳向子程序1200。子程序1200把區(qū)域Q4分割成區(qū)域Q4-H1和區(qū)域Q4-H2,并把這兩個(gè)區(qū)域的左上角及右下角的x、y坐標(biāo)值傳回來(lái)。
再參見(jiàn)圖9B,程序塊1201如前一樣計(jì)算從圖9作為第一個(gè)輸入?yún)?shù)傳過(guò)來(lái)的該塊的高度和寬度。程序塊1201確定區(qū)域Q4的寬度是45,高度為76。程序塊1205把這一塊將分割成的兩個(gè)區(qū)域的x,y坐標(biāo)初始化成為與該塊自身的x、y坐標(biāo)相同的值(本例中155,76,200,0)。
控制流程如前通過(guò)程序塊1215,1220,但這時(shí)程序塊1230得到肯定回答,原因是區(qū)域Q4的寬度小于其高度。因此,控制流程通過(guò)程序塊1240把區(qū)域Q4水平地分割。程序塊1240把區(qū)域1的右下角(LR)y坐標(biāo)以及區(qū)域2的左上角(UL)y坐標(biāo)設(shè)置成等于被分塊的ULy坐標(biāo),減去被乘以因子wt1/(wt1+wt2)的該塊的高度。圖2C-3表明這種情況。程序塊1240通過(guò)從0(在程序塊1205中被初始化而得)起改變區(qū)域1的LRy坐標(biāo)值,旨在把該塊(區(qū)域Q4)分割如下區(qū)域1的LRy=76-(76×120/(120+0))=0。區(qū)域2的ULy坐標(biāo)也變成0。注意,區(qū)域2不再有寬度了,原因是ULy坐標(biāo)和LRy坐標(biāo)值均變成0。這是一個(gè)指示,即不會(huì)有任何窗口進(jìn)入到這個(gè)區(qū)域,且這個(gè)區(qū)域也不會(huì)再被分割。在程序塊1240執(zhí)行完了以后,該子程序在程序塊1299返回到圖9A的1200B,將區(qū)域Q4-H1和區(qū)域Q4-H2(利用區(qū)域1及區(qū)域2的值)作為輸出參數(shù)傳回。如在后面所見(jiàn),再也不會(huì)用區(qū)域Q4-H2了,故這個(gè)區(qū)域的亮度為0是無(wú)關(guān)緊要的。
再參見(jiàn)圖9A,圖9B的分塊子程序1200,然后在程序塊1200B中通過(guò)程序塊1130被第二次調(diào)用。下列輸入?yún)?shù)被傳入到該子程序內(nèi)。區(qū)域Q4-H1坐標(biāo)(本例中是155,76,200,0,參見(jiàn)圖2C-4),Q1wt(70)和Q4wt(50)。輸出參數(shù)區(qū)域Q4-Q1和區(qū)域Q4-Q2也被傳向子程序1200。子程序1200把區(qū)域Q4-H1分割成區(qū)域Q4-Q1和區(qū)域Q4-Q2,傳回這兩個(gè)區(qū)域的左上角和右下角的x、y坐標(biāo)值。
同以前一樣,控制流程通過(guò)程序塊1215,1220和1230直到程序塊1240把區(qū)域Q4-H1水平分割為止。程序塊1240把區(qū)域1的右下角(LR)y坐標(biāo)以及區(qū)域2的左上角(UL)y坐標(biāo)設(shè)置成等于被分割塊的ULy坐標(biāo),減去被乘以因子wt1/(wt1+wt2)的該塊高度。圖2C-3表示出這種情況。程序塊1240通過(guò)改變區(qū)域1的LRy坐標(biāo)值,從0(在程序塊1205中被初始化而得)變起,把該塊(區(qū)域Q4-H1)分割如下區(qū)域1的LRy=76-(76×120/(70+150))=32。區(qū)域2的ULy坐標(biāo)也變成32。在程序塊1240執(zhí)行完之后,子程序在程序塊1299返回到圖9A的1200C,將區(qū)域Q4-Q1和Q4-Q2(利用區(qū)域1和區(qū)域2的值)作為輸出參數(shù)傳回。
再參見(jiàn)圖9A,圖9B的分塊子程序1200由程序塊1200C內(nèi)的程序塊1130第三次調(diào)用。下列輸入?yún)?shù)被傳入到該子程序內(nèi)區(qū)域Q4-H2的坐標(biāo)(本例中是155,0,200,0),Q3wt(0)以及Q4wt(0)。輸出參數(shù)區(qū)域Q4-Q3和區(qū)域Q4-Q4也被傳向子程序1200。但是在子程序1200有機(jī)會(huì)消除我們的簡(jiǎn)并情況即0寬度的區(qū)域Q4-H2之前,程序塊1210將wt1和wt2加在一起并確定了它們不大于0。這表明,對(duì)于窗口而言已存在著足夠的區(qū)域,于是該子程序在程序塊1298返回到圖9A的1115。將這兩個(gè)區(qū)域的左上角和右下角的x,y坐標(biāo)的初始值傳回,從而表明區(qū)域Q4-H2不被分割。
再參見(jiàn)圖9A,程序塊1115把頭三個(gè)窗口計(jì)算得到的區(qū)域的坐標(biāo)值寫入到窗口數(shù)據(jù)40的區(qū)域字段44中去。在本例中,以最活動(dòng)窗口(WordPerfect)的區(qū)域字段44被填入?yún)^(qū)域Q4-Q1的坐標(biāo)值155,76,200,32。再下一個(gè)最活動(dòng)窗口(Lotus1-2-3)的區(qū)域字段44填入?yún)^(qū)域Q4-Q2的坐標(biāo)值155,32,200,0。由于這是最后一個(gè)窗口,程序塊1115的執(zhí)行在此停止。
程序塊1120詢問(wèn)是否有更多的窗口需要處理。校核傳向子程序1100的窗口表格,看一下是否有還未生成區(qū)域的任何窗口存在。既然在本例中,在我們的窗口表格里只有兩個(gè)窗口傳向子程序1100,并且由于對(duì)這兩個(gè)窗口都已生成了區(qū)域,則程序塊1120作否定的回答。因?yàn)槌绦驂K1130是所謂可遞歸調(diào)用的子程序1100,該子程序在程序塊1149里通過(guò)程序塊1130返回到1139中去。程序塊1139返回到圖8的程序塊1150。
現(xiàn)參見(jiàn)圖8,程序塊1150和1155根據(jù)窗口數(shù)據(jù)40里每個(gè)窗口區(qū)域字段44經(jīng)由圖9A及9B的流程圖所提供的數(shù)據(jù)來(lái)決定各窗口在顯示屏幕上的位置。對(duì)于在區(qū)域字段44中帶有“ICON(圖標(biāo))值的窗口,便生成一個(gè)圖標(biāo)(用到表示管理員)。圖2D表明,本例中的各窗口是如何呈現(xiàn)在用戶面前的。當(dāng)程序塊1150指示所有窗口均已作處理時(shí),程序塊1160便對(duì)排序的窗口表格的第一個(gè)窗口(最活動(dòng)的窗口)進(jìn)行聚焦。然后程序流程返回到程序塊401再次查看用戶是否選擇了顯示窗口矩形模式。
我們現(xiàn)在必須返回到圖9A和9B來(lái)討論迄今還未討論過(guò)的另三種實(shí)施例。圖9A的情況和前面討論過(guò)的一樣,只是要把一個(gè)附加參量傳到分塊子程序1200用以指明,被分割的塊是從較大的塊自身按垂直方式還是水平方式分割而成?!八健眳?shù)在該子程序第一次被調(diào)用時(shí)傳入。如果納稅人Tammy實(shí)現(xiàn)了水平參數(shù)但沒(méi)有實(shí)現(xiàn)最佳配合的參數(shù),則她用的正是本發(fā)明的第一個(gè)其他實(shí)施例,顯示屏17如圖2E所示。在這實(shí)施例中,程序塊1220作否定回答,原因是沒(méi)有實(shí)現(xiàn)最佳配合的參數(shù)。程序塊1245的作用如同一個(gè)開(kāi)關(guān),第一次乃是使程序塊1235執(zhí)行分割某一塊(從而實(shí)現(xiàn)了垂直分割),第二次是使程序塊1240執(zhí)行,進(jìn)一步把該塊(“雙親”塊)分割成為兩個(gè)“子”塊,從而完成了水平分割。把矩形區(qū)域分割成區(qū)域1和區(qū)域2是按垂直方式進(jìn)行的,把區(qū)域H1分割成區(qū)域Q1和區(qū)域Q2是按水平方式進(jìn)行的。把區(qū)域H2分割成區(qū)域Q3和區(qū)域Q4也是按水平方式進(jìn)行的。進(jìn)一步先按垂直方式,然后是水平方式分割區(qū)域Q4,如果必要的話再繼續(xù)下去。此子程序返回到它在程序塊1299調(diào)用它的地方。關(guān)于此塊如何被分割的信息也被傳回到程序塊1299。
如果Tammy沒(méi)有實(shí)現(xiàn)比例參數(shù)但實(shí)現(xiàn)了最佳配合的參數(shù),則她用的正是本發(fā)明的第二個(gè)其他實(shí)施例。顯示屏17如圖2F所示。在此實(shí)施例中,程序塊1215作否定回答。程序塊1250確定wt2是否等于0。如果情況是真,則只有一個(gè)窗口要尋找某一區(qū)域,故該塊并不分割。反之,程序塊1251保持區(qū)域1的坐標(biāo)值與在程序塊1205作初始化時(shí)的值相同,但把區(qū)域2的坐標(biāo)值變成0,0,0,0以表明這個(gè)區(qū)域是不存在的。該子程序返回到它在程序塊1297調(diào)用它的地方。如果程序塊1250作否定回答,程序塊1255便要問(wèn)最佳配合的參數(shù)是否實(shí)現(xiàn)。由于在本實(shí)施例中它是實(shí)現(xiàn)了的,則程序塊1255作肯定回答。程序塊1260的作用如同前面討論過(guò)的程序塊1230一樣,如果該塊的寬度大于或等于其高度,該塊作垂直分割,否則作水平分割。程序塊1265的作用如同前面討論過(guò)的程序塊1235一樣,但程序塊1265總是把塊均勻地分割。同樣地,程序塊1270的作用如同前面討論過(guò)的程序塊1240,但程序塊1270總是把塊均勻地分割。在執(zhí)行完程序塊1265或1270之后,該子程序返回到在程序塊1296調(diào)用它的地方。關(guān)于此塊如何被分割的信息也被傳回到程序塊1296。
如果Tammy既沒(méi)有啟動(dòng)比例參數(shù)也沒(méi)有啟動(dòng)最佳配合的參數(shù),則她用的正是本發(fā)明第三個(gè)其他實(shí)施例,顯示屏17如圖2G所示。本例中,圖2G看起來(lái)與圖2F相同,但情況通常不會(huì)是這樣。在本實(shí)施例中,程序塊1255作否定回答。程序塊1275的工作類似于前面討論過(guò)的程序塊1245。
現(xiàn)在來(lái)討論圖10,它是獨(dú)立地聯(lián)同圖5A-5B,圖7,圖8的流程圖在處理器12內(nèi)執(zhí)行的。程序塊1001查看是否有一窗口事件要處理。這與圖5A中程序塊110所作的校核完全相同。如果程序塊1001確定沒(méi)有窗口事件要作處理,則程序塊1003查看是否所有的窗口都被關(guān)閉了。如果是,程序在程序塊1099終止。如果不是,該程序回路返回到程序塊1001再次查看有沒(méi)有窗口事件要處理。一旦程序塊1001作肯定地回答,則程序塊1010便獲得該窗口事件。程序塊1020查問(wèn)此窗口事件是否由用戶活動(dòng)所導(dǎo)致。如果不是,程序回路返回到程序塊1001去尋找另一個(gè)要處理的窗口事件。注意,圖5A-5B是真正地完成此事件-而圖10恰是尋找影響著本發(fā)明窗口定時(shí)功能的特殊事件。如果程序塊1020作肯定回答,程序塊1050便查看控制數(shù)據(jù)30中的暫停標(biāo)識(shí)34是否等于TRUE2。如果這個(gè)標(biāo)識(shí)等于TRUE2,則由于非活動(dòng)時(shí)間超時(shí),窗口計(jì)時(shí)功能便被暫停。由于用戶現(xiàn)在作完了某些事,合適的是把此窗口計(jì)時(shí)功能重新啟動(dòng)。完成這一點(diǎn)乃是把暫停標(biāo)識(shí)34的值變成FALSE(假),結(jié)果圖7的程序塊205便作肯定回答,且窗口數(shù)據(jù)30的計(jì)時(shí)器標(biāo)志32的值可由程序塊208進(jìn)行增大。
再參見(jiàn)圖10,不論程序塊1050回答的是什么,控制流程通向程序塊1060。在這里,最后事件標(biāo)志36被置成控制數(shù)據(jù)30的計(jì)時(shí)器32的值。最后事件標(biāo)志36因而包含著某事件出現(xiàn)的最后一次時(shí)間,它在顯示屏以一窗口指出用戶的活動(dòng)。這些信息由程序塊圖5A的115和118利用來(lái)查看所指定非活動(dòng)超時(shí)值是否已被超過(guò)??刂屏鞒谭祷氐匠绦驂K1001。
本發(fā)明已描述了最佳實(shí)施例和若干其他的實(shí)施例,本領(lǐng)域的技術(shù)人員自然明白,其中是可以作一些細(xì)節(jié)變化而不會(huì)偏離本發(fā)明的精神,范圍和教誨的。例如,最活動(dòng)的窗口可以定位在屏幕的右側(cè)而不是左側(cè),這只須稍稍改變一下圖9B的程序塊1235,12401265和1270。因此,可以考慮文化及個(gè)人的差異,這些差異所在被認(rèn)為就是對(duì)最活動(dòng)的窗口其最醒目的顯示位置的處理。因而,這里所公開(kāi)的僅由以下權(quán)利要求所指明的內(nèi)容來(lái)限制。
權(quán)利要求
1.在顯示屏上有效地顯示多個(gè)窗口的方法,其特征在于下列步驟監(jiān)控所述多個(gè)窗口處在活動(dòng)狀態(tài)的時(shí)間長(zhǎng)度;確定窗口N活動(dòng)期沒(méi)有長(zhǎng)得足以超過(guò)最小閾值;以活動(dòng)性遞降次序醒目地表示出1到N-1個(gè)窗口;把第N個(gè)窗口表示成圖標(biāo)。
2.在顯示屏上有效地顯示多個(gè)窗口的方法,其特征在于下列步驟監(jiān)控所述多個(gè)窗口處在活動(dòng)狀態(tài)的時(shí)間長(zhǎng)度;并且以與活動(dòng)的時(shí)間長(zhǎng)度成正比的尺寸來(lái)顯示所述的多個(gè)窗口。
3.根據(jù)權(quán)利要求2的方法,其特征在于所述的顯示步驟中還進(jìn)而包括以下的步驟決定所述的顯示屏的矩形區(qū)域;把所述的矩形區(qū)域分割為H1區(qū)域和H2區(qū)域;把所述的H1區(qū)域分割為Q1區(qū)域和Q2區(qū)域;把所述的H2區(qū)域分割為Q3區(qū)域和Q4區(qū)域。
4.根據(jù)權(quán)利要求3的方法,其特征在于所述的矩形區(qū)域分割步驟是這樣進(jìn)行的,所述H1區(qū)域的尺寸正比于這樣一個(gè)比值即所述的第一窗口和所述的第二窗口迄今活動(dòng)的時(shí)間長(zhǎng)度與所述的第一窗口直至第N個(gè)窗口迄今活動(dòng)的時(shí)間長(zhǎng)度之比值;所述的H2區(qū)域的尺寸正比于這樣一個(gè)比值即所述的第三窗口直到第N個(gè)窗口迄今活動(dòng)的時(shí)間長(zhǎng)度與第一窗口直至第N個(gè)窗口迄今活動(dòng)的時(shí)間長(zhǎng)度的比值。
5.根據(jù)權(quán)利要求4的方法,其特征在于區(qū)域H1的分割步驟是這樣地實(shí)現(xiàn)的,所述Q1區(qū)域的尺寸正比于這樣一個(gè)比值所述的第一窗口迄今活動(dòng)的時(shí)間長(zhǎng)度與所述的第一窗口和第二窗口迄今活動(dòng)的時(shí)間長(zhǎng)度的比值所述Q2區(qū)域的尺寸正比于這樣一個(gè)比值即所述第二窗口迄今活動(dòng)的時(shí)間長(zhǎng)度與所述第一窗口和第二窗口迄今活動(dòng)的時(shí)間長(zhǎng)度的比值。
6.根據(jù)權(quán)利要求5的方法,其特征在于區(qū)域H2的分割步驟是這樣地實(shí)現(xiàn)的,所述Q3區(qū)域的尺寸正比于這樣一個(gè)比值即所述第三窗口迄今活動(dòng)的時(shí)間長(zhǎng)度與所述第三窗口直到第N個(gè)窗口迄今活動(dòng)的時(shí)間長(zhǎng)度的比值所述Q4區(qū)域的尺寸正比于這樣一個(gè)比值即所述第四直到第N個(gè)窗口迄今活動(dòng)的時(shí)間長(zhǎng)度與所述第三直到第N個(gè)窗口迄今活動(dòng)的時(shí)間長(zhǎng)度的比值。
7.根據(jù)權(quán)利要求6的方法,其特征在于下列步驟以所述Q1區(qū)域中顯示所述第一個(gè)窗口;以所述Q2區(qū)域中顯示所述第二個(gè)窗口;且以所述Q3區(qū)域中顯示所述第三個(gè)窗口。
8.根據(jù)權(quán)利要求7的方法,其特征在于下列步驟這樣地實(shí)現(xiàn)把區(qū)域Q4分割成Q4-Q1區(qū)域和Q4-Q2區(qū)域,使得Q4-Q1區(qū)域的尺寸正比于這樣一個(gè)比值即所述的第四個(gè)窗口迄今處于“聚焦”的時(shí)間長(zhǎng)度與所述的第四窗口直到第N個(gè)窗口迄今處于聚焦的時(shí)間長(zhǎng)度的比值使得Q4-Q2區(qū)域的尺寸正比于這樣一個(gè)比值所述第五個(gè)窗口迄今處在“聚焦”的時(shí)間長(zhǎng)度與所述的第四窗口直到第N個(gè)窗口迄今處在聚焦的時(shí)間長(zhǎng)度的比值,這里N=5;在所述Q4-Q1區(qū)域內(nèi)顯示所述的第四窗口;在所述Q4-Q2區(qū)域內(nèi)顯示所述的第五窗口。
9.根據(jù)權(quán)利要求8的方法,其特征在于所述的顯示步驟中還進(jìn)而包括以下的步驟確定第六個(gè)窗口迄今活動(dòng)還未長(zhǎng)得足以超過(guò)一最小閾值;把第六個(gè)窗口顯示成一個(gè)圖標(biāo)。
10.根據(jù)權(quán)利要求3的方法,其特征在于如果所述的矩形區(qū)域的寬度大于或等于其高度,則按垂直方式實(shí)現(xiàn)所述的矩形區(qū)域的分割步驟。
11.根據(jù)權(quán)利要求3的方法,其特征在于如果所述矩形區(qū)域的所述分割步驟是按垂直方式進(jìn)行的話,則按水平方式實(shí)現(xiàn)所述H1區(qū)域的分割步驟。
12.根據(jù)權(quán)利要求3的方法,其特征在于如果所述的矩形區(qū)域?qū)挾刃∮谄涓叨?,則按水平方式實(shí)現(xiàn)所述的矩形區(qū)域的分割步驟。
13.根據(jù)權(quán)利要求3的方法,其特征在于如果所述的矩形區(qū)域的所述分割步驟是按水平方式進(jìn)行的話,則按垂直方式實(shí)現(xiàn)所述H2區(qū)域的分割步驟。
全文摘要
公開(kāi)了一種在計(jì)算機(jī)顯示屏上醒目地和按比例地顯示窗口的方法和裝置。在顯示屏上出現(xiàn)的每一窗口的活動(dòng)(也謂之“聚焦”)時(shí)間是可以監(jiān)控的。一旦收到用戶的命令,較長(zhǎng)時(shí)間活動(dòng)的窗口較之較短時(shí)間活動(dòng)的窗口顯示得更加醒目些。顯示屏上顯示的窗口,其窗口尺寸與每一窗口活動(dòng)著的時(shí)間成正比。
文檔編號(hào)G06F3/033GK1073787SQ9211346
公開(kāi)日1993年6月30日 申請(qǐng)日期1992年11月28日 優(yōu)先權(quán)日1991年12月20日
發(fā)明者卡利·李·貝茨, 杰弗里·邁克爾·里安 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
新营市| 齐河县| 灌阳县| 太原市| 云阳县| 阿瓦提县| 车致| 汪清县| 张掖市| 耿马| 武强县| 庐江县| 吉水县| 巧家县| 丰都县| 乌拉特前旗| 黄石市| 桦甸市| 兴海县| 宝鸡市| 远安县| 罗平县| 东安县| 深水埗区| 海淀区| 华容县| 云龙县| 平山县| 兴化市| 长沙市| 应城市| 临武县| 桦川县| 盐城市| 手游| 虹口区| 丹寨县| 石楼县| 资溪县| 麻城市| 寿光市|