專利名稱:兩個半徑和一個圓弧為幾何邊界的菜單的制作方法
技術(shù)領(lǐng)域:
本發(fā)明主要涉及人機界面,尤其涉及一種菜單的表示,該菜單在用戶界面中的一個指針導(dǎo)航時由一個圓的兩個半徑和一個圓弧為幾何圖形的邊界。
背景技術(shù):
圖形用戶界面是一種表示程序、文件以及對在計算機屏幕上的圖形圖像(例如,圖標、菜單和對話框)選項的視覺計算機環(huán)境。用戶可以通過鼠標(例如,鼠標104)或者時常采用鍵盤的指點和點擊來選擇和激活這些選項。特殊的項目(例如,滾動欄)也可在用戶的所有應(yīng)用中采用相同的方式來工作,因為圖形用戶界面提供了處理這些元件的標準例程并能報告用戶的行為(例如,鼠標在一個特殊圖標上的點擊或者在文本中的特殊位置上的點擊,或者一個鍵的按動)。
菜單時常與圖形用戶界面一起使用。菜單是一選項的列表,從該表中,用戶可以做出某種選擇,以便于執(zhí)行所需的操作,例如,選擇一條命令或者將一種特殊的格式應(yīng)用于一個文檔部分。菜單上的選擇稱為菜單項目,可以通過鍵盤或鼠標器來選擇。在某些實例中,對于指定狀態(tài)為“灰色”(與有效的菜單選擇相比較變得暗淡)來說,該菜單項目是無效的(或者是不合適的)。許多應(yīng)用程序,特別是在圖形用戶界面環(huán)境中操作的一些應(yīng)用程序,用戶菜單作為向用戶提供一種容易學(xué)習(xí)、容易使用,也容易記憶的程序命令和它們的適當用途的工具來使用。
有許多不同類型的菜單。下拉式菜單是一種在請求時從菜單欄(例如,菜單欄108)下拉的菜單,并且在沒有其它操作時保持打開直至用戶關(guān)閉它或者選擇一個菜單項目。折疊式菜單是一種從菜單往下折疊的菜單,且只要用戶保持它打開著就保持其有效。彈出式菜單是一種當用戶采用鼠標器做出某種選擇時出現(xiàn)在屏幕上的菜單。彈出式菜單可以出現(xiàn)在屏幕的任何位置上,并且一般是在用戶選擇了彈出式菜單中的一個菜單項目時消失。
一種彈出式菜單是上下文采單。上下文采單如同其它菜單一樣,可以保持著由一個共同主題所分類的命令。一個上下文采單的常見主題是向用戶提供訪問普通操作(程度是認為是用戶經(jīng)常使用的)。根據(jù)用戶的輸入,上下文采單提供了一組普通操作,這些普通操作可以在指定的計算機屏幕位置上和應(yīng)用狀態(tài)(以及一般響應(yīng)鼠標器右擊的“彈出”)下產(chǎn)生。
一些可用性研究已經(jīng)發(fā)現(xiàn)初學(xué)的用戶時常難以定位上下文采單,從而破壞了上下文采單有助于初學(xué)用戶在操作復(fù)雜的計算環(huán)境中增強信心和信任的潛在實用性。初學(xué)的用戶時常擔心在他們還不能完全理解的用戶界面元件上點擊。此外,該上下文采單需要用戶在到處都無的地方進行右鍵點擊,特別是在計算機的屏幕上,以引起上下文采單的出現(xiàn),這對初學(xué)用戶來說就感到很不適宜。
即是用戶已經(jīng)明白了怎樣產(chǎn)生上下文采單,但是它的內(nèi)容(通常是菜單的項目)還不能變化,還不一定能表示用戶的需求。上下文采單的菜單項目是由位置所確定的,在該位置上,一個指針可以定位在圖形用戶界面中。例如,從桌面激活的與上下文采單有關(guān)的菜單項目(這是一個屏幕上的工作區(qū)域,該區(qū)域可以使用圖標和菜單來模擬圖形用戶界面中的桌面)不同于從字處理應(yīng)用中激活的與上下文采單有關(guān)的菜單項目。這些菜單項目都是靜態(tài)的。構(gòu)成上下文采單的編程員的有根據(jù)的推測對許多用戶都是有用的,但是并不能適用于那些已經(jīng)在他們精通操作復(fù)雜計算環(huán)境的過程中形成了他們自己喜好的用戶。
圖1A所示的系統(tǒng)100和圖1B所示的應(yīng)用106更詳細地說明了這一問題。
系統(tǒng)100包括一臺個人計算機102,這是一臺每次只能一人使用的計算機。個人計算機并不需要共享另一臺計算機的處理、盤,以及打印機資源。IBM PC兼容計算機和蘋果麥金托什機是兩例個人計算機的實例。如果個人計算機102采用一個圖形用戶接口,則連接著個人計算機102的鼠標器104可以用于在這類圖形用戶界面上運行的應(yīng)用中導(dǎo)航一個指針。
一例應(yīng)用的實例是應(yīng)用106,這是一例專為改善特殊計算任務(wù)(例如,字處理、會計或資產(chǎn)管理)的性能而設(shè)計的程序,見圖1B。作為一例適用于大多數(shù)應(yīng)用的典型,應(yīng)用106包括一個菜單欄108,該菜單欄以矩形欄顯示在應(yīng)用106的屏幕窗口中,通常是在上部,用戶可以從中來選擇菜單。有效菜單的名稱,例如,“文件”菜單110、“編輯”菜單112、以及“幫助”菜單,都可以顯示在菜單欄中;用戶可以用鍵盤或鼠標104來選擇一個菜單,從而顯示該菜單的選項列表。
應(yīng)用106包括一個工作區(qū)域116,該區(qū)域具有一個矩形的形狀。各種用戶界面元件都可以出現(xiàn)在工作區(qū)域106中,例如,上下文采單117。當用戶使用鼠標器的右鍵點擊由指針128所指示的某個位置時,就會出現(xiàn)多個菜單項目,例如,“剪切”菜單項目118、“復(fù)制”菜單項目120、“粘貼”菜單項目122,以及“格式化”菜單項目124。指針128作為屏幕上的一個符號出現(xiàn),例如,是一個輕微向左或向右傾斜的箭頭,它可以由鼠標104或者其它輸入設(shè)備來控制,并且作為一個表示(和選擇)位置或者在諸如上下文采單117的菜單項目118-124的計算機屏幕上選擇的工具來使用。
菜單項目118-122(剪切、復(fù)制和粘貼)都是在一個過程中的操作,在該過程中,個人計算機102作為一臺剪刀和膠水的電子組合,適用于識別一段內(nèi)容(例如,文檔)或者從不同的來源中編輯文檔。剪切菜單項目118所具有的屏幕符號象一對剪刀,它位于文字“剪切”的左邊。剪切菜單項目118允許用戶去除部分文檔,通常是將這些部分暫時放置在存儲器中,使得剪切部分可以插入(粘貼)在任何位置上。復(fù)制菜單項目120所具有的屏幕符號條一組文檔拷貝,它位于文字“復(fù)制”的左邊。復(fù)制菜單項目120允許信息在文檔的另一部分中,在不同的文件和存儲器的位置上,或者在不同的介質(zhì)上復(fù)制和重現(xiàn)。由復(fù)制菜單項目120所激活的復(fù)制操作可以對從一個單一字符到文字和圖形圖象中的大段章節(jié)起作用。例如,文字和圖形可以復(fù)制到文檔的另一部分,復(fù)制到計算機的存儲器(籍助于暫時存儲裝置,例如,剪輯板),或者復(fù)制到不同的文件。在大多數(shù)的情況下,復(fù)制操作會在原地保留著原始的信息。象剪輯板的屏幕符號位于粘貼菜單項目122的文字“粘貼”的左邊。粘貼菜單項目122允許插入已經(jīng)從一個相同或不同文檔的不同位置的一段文檔中剪切或復(fù)制的文字或圖形。沒有與格式化菜單項目124有關(guān)的屏幕符號。格式化菜單項目124允許所選擇內(nèi)容的外觀變化,例如,文字、圖形或者甚至于是電子數(shù)據(jù)表中的一個單元。
對于初學(xué)的用戶來說,在沒有完全探索多個菜單例如,應(yīng)用106的菜單110-114的情況下,就很難發(fā)現(xiàn)上下文采單117(特別是,如果用戶只具有單鍵的鼠標器)并能方便地訪問菜單項目118-124。此外,菜單項目118-124是靜態(tài)的并且不能響應(yīng)用戶所改變的喜好。上下文采單的一致性有助于增強個人計算機的標準化,并且能夠使得所有的用戶可以共享與激活和使用上下文采單有關(guān)的相應(yīng)計算經(jīng)驗。在沒有幫助各個用戶去發(fā)現(xiàn)對用戶本身喜好敏感的上下文采單重新聚焦在個人計算經(jīng)驗的解決方案的條件下,用戶最終會不再相信系統(tǒng)100能夠提供所需要的個人計算經(jīng)驗,從而減少從市場上對系統(tǒng)100的需求。于是,就需要一種方法和系統(tǒng)能夠提供增強的上下文采單,同時避免或減小與現(xiàn)有上下文采單有關(guān)的上述和其它問題。
發(fā)明概述根據(jù)本發(fā)明,提供了一種適用于呈現(xiàn)扇形菜單的系統(tǒng)、方法和計算機可讀介質(zhì)。術(shù)語“扇形菜單”是指一種采用一個圓的兩個半徑和一個內(nèi)圓弧作為幾何圖形邊界的菜單。(換句話說,采用否定的措詞,是一個去除部分圓的圓形幾何圖形,采用肯定的措詞,是一個具有一個空缺部分的圓形幾何圖形)。術(shù)語“推斷”是指產(chǎn)生用戶的意圖的行為,這在一個定位設(shè)備的使用中是潛在的。術(shù)語“移情”是指人機界面理解、意識和敏感的能力,從而可以根據(jù)過去或現(xiàn)在輸入設(shè)備的使用經(jīng)歷來推斷用戶的意圖,而不再需要一種對象明確的方式來完全告知意圖(例如,僅僅只需要鼠標的移動就足夠了)。
本發(fā)明的系統(tǒng)形式包括一個適用于提供上下文敏感的菜單的計算機系統(tǒng)。該計算機系統(tǒng)包括一個用移動一個定位設(shè)備來移動的屏幕光標和一個環(huán)繞著屏幕光標的扇形菜單。該扇形菜單是以一個圓的兩個半徑和一個內(nèi)圓弧為邊界的幾何圖形。
根據(jù)本發(fā)明的另一方面,本發(fā)明的另一種系統(tǒng)形式包括一個適用于提供上下文敏感菜單的計算機系統(tǒng)。該計算機系統(tǒng)包括一個用移動一個定位設(shè)備來移動的屏幕光標和一個在屏幕光標周圍出現(xiàn)的扇形菜單。該扇形菜單具有由多個半徑剪切的扇形菜單所組成的多個圖段。各個圖段都具有一個適用于扇形菜單的菜單項目。
根據(jù)本發(fā)明的另一方面,本發(fā)明的另一種系統(tǒng)形式包括一個適用于提供上下文敏感菜單的計算機系統(tǒng)。該計算機系統(tǒng)包括一個由定位設(shè)備移向目標的屏幕光標以及一個隨著該光標一起移動的扇形菜單。該扇形菜單具有多個菜單項目。各個菜單項目都表示位于目標的用戶界面元件的操作。
根據(jù)本發(fā)明的另一方面,本發(fā)明的方法形式包括一種用于在一個用戶導(dǎo)航一個指針時呈現(xiàn)上下文敏感菜單的計算機系統(tǒng)中實施的方法。該方法包括收集與指針導(dǎo)航的窗口環(huán)境有關(guān)的數(shù)據(jù)。該方法也包括推斷在光標導(dǎo)航到的目標處的用戶界面元件。該方法還包括顯示一個隨著指針移動的扇形菜單。顯示的行為包括顯示由多個半徑剪切扇形菜單所形成的多個圖段,其中每個圖段都包含了一個菜單項目,該菜單項目可以包括在一個指針導(dǎo)航所指向目標處的用戶界面元件。
根據(jù)本發(fā)明的另一方面,本發(fā)明的計算機可讀介質(zhì)形式包括一個具有計算機可執(zhí)行指令的計算機可讀介質(zhì),該指令可用于實施用于在一個用戶導(dǎo)航指針時呈現(xiàn)上下文敏感菜單的方法。該方法包括收集與指針導(dǎo)航的窗口環(huán)境有關(guān)的數(shù)據(jù)。該方法也包括推斷在指針導(dǎo)航的目標定的用戶界面元件引導(dǎo)到指針所導(dǎo)航的目標。該方法還包括顯示一個隨著指針移動的扇形菜單。顯示的行為包括顯示由多個半徑剪切扇形菜單所形成的多個圖段,其中每個圖段都包含了一個菜單項目,該菜單項目可以包括一個指針導(dǎo)航所指向目標的用戶界面元件。
附圖的簡要描述當結(jié)合附圖來參考以下詳細討論時,就能更快更好地理解本發(fā)明的上述方面以及許多附帶的優(yōu)點,其中圖1A是說明一個常規(guī)系統(tǒng)的示意圖;圖1B是說明顯示上下文采單的常規(guī)應(yīng)用的方框圖;圖2是說明示例性計算設(shè)備的方框圖;圖3A是說明一例典型用戶使用具有典型鼠標器的典型個人計算機的示意圖;圖3B是說明根據(jù)本發(fā)明一個實施例的一個扇形菜單隨著在用戶界面中的一個指針移動的示意圖;圖3C是說明根據(jù)本發(fā)明一個實施例在導(dǎo)航沿著用戶界面中的軌道光標移動過程中一個扇形菜單隨著一個指針在兩個不同時間移動的示意圖;圖3D是根據(jù)本發(fā)明一個實施例的一個扇形菜單,更具體的說,是一個扇形菜單中的一個菜單項目選擇的示意圖;圖3E是說明根據(jù)本發(fā)明一個實施例適用于通過一個指針,例如,一個鼠標器,來推斷用戶意圖,以及適用于在一個用戶界面中導(dǎo)航一個指針時呈現(xiàn)扇形菜單的方框圖;圖4A-4G是說明根據(jù)本發(fā)明一個實施例適用于在一個用戶導(dǎo)航一個指針時呈現(xiàn)一個扇形菜單的方法的流程圖。
較佳實施例的詳細描述圖2說明了一例計算系統(tǒng)環(huán)境200,該環(huán)境可適用于實現(xiàn)本發(fā)明的某些方面,例如,呈現(xiàn)一個扇形菜單,并且當用戶導(dǎo)航一個屏幕光標(例如,指針)時可以從用戶意圖推斷該扇形菜單的菜單項目。計算系統(tǒng)環(huán)境200僅僅只是一例適用的計算環(huán)境,而并不是想要構(gòu)成對本發(fā)明功能的范圍或使用的任何限制。不應(yīng)該將計算環(huán)境200解釋成具有對所說明討論的元件的任意一個或者任意組合的依賴或需要。
本發(fā)明可以與多種其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或結(jié)構(gòu)一起工作。適用于本發(fā)明所使用的眾所周知的計算系統(tǒng)、環(huán)境和/或結(jié)構(gòu)的例子包括,但并不限制于,個人計算機、服務(wù)器計算機、手持或膝上設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機頂盒、可編程消費電器、網(wǎng)絡(luò)PC、小型計算機、大型計算機、包括任何上述系統(tǒng)或設(shè)備的分布式計算環(huán)境,以及其它等等。
本發(fā)明了是在諸如可由計算機執(zhí)行的程序模塊的計算機可執(zhí)行指令的一般環(huán)境中描述的。一般來說,程序模塊包括可以執(zhí)行特殊任務(wù)或?qū)崿F(xiàn)特殊抽象數(shù)據(jù)類型的例程、程序、對象、元件、數(shù)據(jù)結(jié)構(gòu)等等。
本發(fā)明也可以在分布式計算環(huán)境中實現(xiàn),在該分布式計算環(huán)境中,任務(wù)是由通過一個通訊網(wǎng)絡(luò)連接的遠程處理設(shè)備來執(zhí)行的。在一個分布式計算環(huán)境中,程序模塊可以位于本機和遠程計算機兩者的存儲介質(zhì)中,包括存儲器存儲設(shè)備。
圖2所示的計算系統(tǒng)環(huán)境包括一個采用計算機210形式的通用計算設(shè)備。計算機210的元件可以包括,但并不限制于,一個處理單元220,一個系統(tǒng)存儲器230,和一個系統(tǒng)總線221,該總線將包括系統(tǒng)存儲器的各種系統(tǒng)元件與處理單元220相耦合。系統(tǒng)總線221可以是幾類總線結(jié)構(gòu)中的任意一種總線結(jié)構(gòu),包括存儲器總線或存儲器控制器,外圍總線,以及使用多種總線架構(gòu)中的任意一種總線架構(gòu)的局部總線。舉例來說,但并不限制于,這類總線架構(gòu)包括工業(yè)標準架構(gòu)(ISA)總線、微通道架構(gòu)(MCA)總線、增強型ISA(EISA)總線、視頻電子標準協(xié)會(VESA)局部總線、和外圍元件互連(PCI)總線(亦稱之為Mezzanine總線)。
計算機210一般都包括多種計算機可讀介質(zhì)。計算機可讀介質(zhì)可以是任何計算機210能夠訪問的有效介質(zhì),它包括易失性和非易失性的介質(zhì),可移動性和非移動性的介質(zhì)。舉例來說,但并不限制于,計算機可讀介質(zhì)可以包括計算機存儲介質(zhì)和通訊介質(zhì)。計算機存儲介質(zhì)包括易失性和非易失性、可移動性和非移動性的介質(zhì),它可以采用信息存儲技術(shù)中的任何方法或技術(shù)來實現(xiàn),例如,計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或其它數(shù)據(jù)。計算機存儲介質(zhì)包括,但并不限制于,RAM、ROM、EEPROM、閃存存儲器或者其它存儲器技術(shù)、CD-ROM、數(shù)字通用盤(DVD)或者其它光盤存儲、磁帶盒、磁帶、磁盤存儲或者其它磁存儲設(shè)備、或者任何其它計算機存儲介質(zhì)。通訊介質(zhì)一般包括在調(diào)制數(shù)據(jù)信號例如,載波或其它可包括任何信息傳遞介質(zhì)的傳輸機制中的計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它采用調(diào)制數(shù)據(jù)信號方式的數(shù)據(jù)。術(shù)語“調(diào)制數(shù)據(jù)信號”是指一種具有以信號編碼信息的方式設(shè)置或改變的一個或多個特性的信號的信號。舉例來說,但并不限制于,通訊介質(zhì)包括有線介質(zhì),例如,有線網(wǎng)絡(luò)或者直接連線連接;和無線介質(zhì),例如,聲波、RF紅外和其它無線介質(zhì)。任何上述的組合也應(yīng)該包括于計算機可讀介質(zhì)的范圍之內(nèi)。
系統(tǒng)存儲器230包括采用易失性和/或非易失性存儲器形式的計算機存儲介質(zhì),例如,只讀存儲器(ROM)231和隨機存取存儲器(RAM)232?;据斎?輸出系統(tǒng)233(BIOS)包含著基本例程,該基本例程有助于在啟動時在計算機210中的各元件之間傳遞信息,它一般存儲于ROM 231。RAM 232一般包含著處理單元220可以進行即時訪問和/或現(xiàn)場操作的數(shù)據(jù)和/或程序模塊。舉例來說,但并不限制于,圖2說明了操作系統(tǒng)234、應(yīng)用程序235、其它程序模塊236和程序數(shù)據(jù)237。
計算機210也可以包括其它可移動性/非移動性的、易失性/非易失性的計算機存儲介質(zhì)。只是舉例來說,圖2圖示了硬盤驅(qū)動器241,它可以對非移動性非易失性的磁介質(zhì)進行讀寫操作;磁盤驅(qū)動器251,它可以對可移動性非易失性的磁盤252進行讀寫操作;以及光盤驅(qū)動器255,它可以對可移動性非易失性的光盤256,例如,CD-ROM或者其它光介質(zhì),進行讀寫操作。在典型的操作環(huán)境中所使用的其它可移動性/非移動性、易失性/非易失性計算機存儲介質(zhì)包括,但并不限制于,盒式磁帶、閃存卡、數(shù)字通用盤、數(shù)字視頻帶、固態(tài)RAM、固態(tài)ROM、以及其它等等。硬盤驅(qū)動器241一般可通過一個諸如接口240的非移動存儲器接口與系統(tǒng)總線221相連接;磁盤驅(qū)動器251和光盤驅(qū)動器255一般可通過一個諸如接口250的可移動性存儲器接口與系統(tǒng)總線221相連接。
以上所討論的和圖2所說明的驅(qū)動器及其相關(guān)的計算機存儲介質(zhì)為計算機210提供了計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。在圖2中,例如,硬盤驅(qū)動器241可說明成存儲操作系統(tǒng)244、應(yīng)用程序245、其它程序模塊246,和程序數(shù)據(jù)247。值得注意的是,這些元件也可以相同于或者不同于操作系統(tǒng)234、應(yīng)用程序235、其它程序模塊236,以及程序數(shù)據(jù)237。操作系統(tǒng)244、應(yīng)用程序245、其它程序模塊246以及程序數(shù)據(jù)247用不同的數(shù)字來表示,以至少說明這些是不同的拷貝。用戶可以通過輸入設(shè)備將命令和信息輸入到計算機210,例如,鍵盤262和定位設(shè)備261,后者常稱之為鼠標器、跟蹤球或觸摸墊。其它輸入設(shè)備(未顯示)可以包括麥克風、操縱桿、游戲墊、衛(wèi)星天線、掃描儀等等。各種輸入設(shè)備時常是通過一個與系統(tǒng)總線相耦合的用戶輸入接口260連接著處理單元220,并且也可以采用其它接口和總線結(jié)構(gòu)來連接,例如,并行端口、游戲端口、或者通用串行總線(USB)。監(jiān)視器291或者其它類型的顯示設(shè)備也可以通過諸如視頻接口290的接口連接著系統(tǒng)總線221。除了監(jiān)視器之外,計算機也可以包括其它外圍輸出設(shè)備,例如,揚聲器297和打印機296,它們都可以通過輸入/輸出外圍接口295來連接。
計算機210可以在網(wǎng)路環(huán)境中工作,使用邏輯連接至一個或多個遠程計算機,例如,遠程計算機280。遠程計算機280可以是個人計算機、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備、或者其它通用網(wǎng)絡(luò)結(jié)點,并且一般可包括與上述計算機210有關(guān)的許多或所有元件,雖然在圖2中只例示了一種存儲器存儲設(shè)備281。在圖2中所表示的邏輯連接包括一個局域網(wǎng)絡(luò)(LAN)271和一個廣域網(wǎng)絡(luò)(WAN)273,并且也可以包括其它網(wǎng)絡(luò)。這類網(wǎng)絡(luò)環(huán)境在辦公室內(nèi)是十分普遍的,例如,企業(yè)級計算機網(wǎng)絡(luò),企業(yè)內(nèi)的互聯(lián)網(wǎng)和互聯(lián)網(wǎng)。
當在LAN網(wǎng)絡(luò)環(huán)境中使用時,計算機210可以通過一個網(wǎng)絡(luò)接口或者一個適配器270與LAN 271相連接。當在WAN網(wǎng)絡(luò)環(huán)境中使用時,計算機210一般可包括一個調(diào)制解調(diào)器272或者其它用于建立與諸如互聯(lián)網(wǎng)之類的WAN 273通訊的部件。調(diào)制解調(diào)器272可以是內(nèi)置的也可以是外置的,它通過輸入/輸出外圍接口295或者其它合適的機制與系統(tǒng)總線221相連接。在網(wǎng)絡(luò)環(huán)境中,所表示的與計算機210有關(guān)的程序模塊,或者其中一部分,都可以存儲于遠程存儲器存儲設(shè)備中。舉例來說,但并不限制于,圖2說明了將遠程應(yīng)用程序285駐留在存儲器設(shè)備281中。應(yīng)該意識到的是,所顯示的網(wǎng)絡(luò)應(yīng)用僅僅只是用于說明的目的,并且也可以使用其它建立在計算機之間通訊鏈路的部件。
以一個圓的兩個半徑和一個內(nèi)圓弧的幾何圖形為邊界的形式的上下文采單(即,“扇形菜單”)可以通過本發(fā)明的各種實施例呈現(xiàn)給用戶,以便于更好地幫助使用個人計算機的用戶。該扇形菜單可以是由用戶人工激活(例如,點擊指針的右鍵)或者可以通過本發(fā)明各個實施例隨著用戶導(dǎo)航一個指針而自動激活。該扇形菜單可以包括由多個半徑所剪切的扇形菜單組成的多個圖段。各個菜單項目是由扇形菜單的一個圖段所包含,且可以采用文字加以描述或者采用圖形加以表示。在扇形菜單的一圖段中的一個菜單項目所表示的操作可以通過指針在該圖段上通過來加以選擇。各個菜單項目可以靜態(tài)定義或者根據(jù)用戶導(dǎo)航指針的意圖來動態(tài)推斷。圖3A顯示了使用扇形菜單的系統(tǒng)300,并且圖3B顯示了在應(yīng)用308的環(huán)境中所呈現(xiàn)的典型扇形菜單334。
系統(tǒng)300是一個計算環(huán)境,該環(huán)境具有在其上運行的一些硬件、一些軟件應(yīng)用、以及一個操作系統(tǒng)。用戶302可以操作一個鼠標器306,來導(dǎo)航一個在個人計算機304中工作的圖形用戶接口中的指針336。個人計算機304是一臺能夠重復(fù)和快速執(zhí)行計算和指令的機器,并且可以設(shè)計成每次只能一個人使用。相比較其它類型的計算機,例如,超級計算機、大型計算機和工作站,個人計算機304是較小的、較廉價的、并且更容易使用。個人計算機(例如,個人計算機304)以低成本向缺乏豐富編程經(jīng)驗的人士提供了計算能力。用戶302可操作個人計算機304,以連接諸如互聯(lián)網(wǎng)之類的世界范圍的通訊網(wǎng)絡(luò)和WWW等著名的基于圖形信息的數(shù)據(jù)庫,來發(fā)現(xiàn)實際上任何主題所需的信息。
其中,在個人計算機304上運行的應(yīng)用程序是應(yīng)用程序308。應(yīng)用程序308,類似于窗口應(yīng)用程序,它包括一個標題欄310,該標題欄是在窗口上部的一個水平空間,它包含著窗口的名稱(未顯示)。大多數(shù)標題欄,例如,標題欄310,還包含著一些按鈕框,可用于關(guān)閉和調(diào)整窗口的大小,例如,按鈕310-322。在標題欄中的點擊允許用戶302移動包括了應(yīng)用308的整個窗口。按鈕318是一個最小化按鈕,它位于在應(yīng)用308的右上角。當點擊該按鈕時,最小化按鈕就隱藏應(yīng)用308。相鄰最小按鈕318出現(xiàn)的是最大化按鈕320。最大化按鈕320會使一個窗口,例如,應(yīng)用308,擴展和填充在一個較大窗口中的所有有效空間。相鄰最大化按鈕320出現(xiàn)的是關(guān)閉按鈕322,這是一個其中標有X的正方形按鈕。點擊該關(guān)閉按鈕322就可關(guān)閉應(yīng)用308。
在標題欄310的下面是一個菜單欄324,這是一個在應(yīng)用308中顯示的矩形欄,用戶302可以從該欄中選擇菜單311-314。有效菜單的名稱可以顯示于菜單欄324,例如, “文件”、“編輯”、“幫助”。用鍵盤或者用鼠標器306來選擇一個菜單就會顯示該菜單的選項列表。用戶302也可以選擇幫助按鈕326來顯示一個幫助的彈出菜單(未顯示),而不需要點擊幫助菜單314。幫助菜單326可以由一個屏幕符號表示,象一個相鄰于問號的對話泡。在菜單欄324的下面是一個應(yīng)用程序308的工作區(qū)域328,在該工作區(qū)域中,應(yīng)用308可以包含或者表示它自己的文檔或者內(nèi)容中,例如,內(nèi)容塊330。內(nèi)容塊330可以是一幅類似太陽隱藏在云中的位形。
假定用戶302要將一個指針336沿著從指針336的位置開始到目標316即編輯菜單312結(jié)束的軌跡線路332移動。本發(fā)明的各種實施例呈現(xiàn)出扇形菜單334,它包括圖段334A-334D,各個圖段對應(yīng)于一個菜單項目,該項目依次對應(yīng)于一個操作,這幫助用戶302進行他的應(yīng)用308的操作。在指針336移動的方向中,在用戶302導(dǎo)航的指針336移向目標316時不顯示圖段,從而避免阻擋、摸糊和阻礙用戶302。在扇形菜單334較佳地向用戶302自動顯示的同時,用戶也可以人工激活扇形菜單334,例如,通過按動在鍵盤上的鍵組合。
扇形菜單334在指針336周圍,并且該指針336位于扇形菜單334的中心。一旦它出現(xiàn),則扇形菜單334就跟蹤指針336的移動并且與該指針336一起移動。扇形菜單334可以用四個圖段334A-334D來顯示,當然也可以采用任何適當數(shù)量的圖段。圖段334A-334D包含了文字描述“剪切”、“復(fù)制”、“粘貼”和“取消”,且分別識別了剪切、復(fù)制、粘貼和取消的操作。圖段334A包含了一個表示剪切操作的菜單項目,該操作允許用戶302去除一部分內(nèi)容塊,例如,內(nèi)容塊330。圖段334B包含著一個表示復(fù)制操作的菜單項目,該項目允許用戶302去復(fù)制信息并且在應(yīng)用308的另一部分文檔中再生該信息。圖段334C包含了一個表示粘貼操作的菜單項目,該項目允許用戶302插入文字或一個圖形,例如,內(nèi)容塊330,該內(nèi)容是從一個文檔中已經(jīng)剪切或復(fù)制的內(nèi)容,被插入到相同的或不同的文檔的另一位置。圖段334D包含了一個表示取消操作的菜單項目,該操作可以倒退用戶302的最后一個操作。例如,要取消刪除,則可以選擇在圖段334D菜單項目中的取消操作,于是就可以將所刪除的文字或內(nèi)容塊恢復(fù)到文檔中,例如,內(nèi)容塊330。許多應(yīng)用程序,例如,應(yīng)用308,都使用戶302能夠取消或再做一項操作。任何合適的操作或用戶界面控件都可以從圖段334A-334D激活,代替其剪切、復(fù)制、粘貼和取消操作。
在本發(fā)明的一個實施例中,在圖段334A-334D中的操作都是由編程員預(yù)先靜止確定的。在本發(fā)明的另一實施例中,從圖段334A-334D所激活的操作取決于用戶302最近所使用的操作而改變;用戶302最頻繁使用的操作;與應(yīng)用308的環(huán)境最相關(guān)的操作;或者是上述類別的一種組合。在本發(fā)明的另一實施例中,菜單項目的操作包括一個下拉操作,該下拉操作可以將在計算環(huán)境中的任何地方所選擇的計算資源下拉。在本發(fā)明的另一實施例中,在圖段334A-334D中所包含的菜單項目的操作都是基于通過一個移情的人機界面(本文稱之為“移情界面”)所推斷的用于302的意圖,該“移情的界面”能夠了解用戶302并且可以推斷用戶的意圖,從而有助于用戶302更好地使用個人計算機304。在2003年6月6日所申請的美國專利申請?zhí)朜o.10/456,365,題為“移情式人機界面”中描述了這類移情界面,該文通過引用并包括與此。
使用移情界面,可以推斷用戶302的意圖。用戶302所喜歡選擇的用戶界面元件操作可以作為扇形菜單的圖段334A-334D所包含的菜單項目來設(shè)置。隨著用戶302導(dǎo)航在應(yīng)用308中的指針336,則在扇形菜單334的圖段所包含的菜單項目中的操作可以根據(jù)用戶302導(dǎo)航指針336的方向來變化。圖3C說明了在兩個不同時間所采集到的扇形菜單334的表示(但這是同時示出的,從而可以更好地說明扇形菜單334圖段334A-334D所包含菜單項目的操作中的變化)。圖3C所說明的多種元件類似于圖3B所說明的多種元件,為了簡化就不再重復(fù)它們的描述。
在第一時間快照中,用戶沿著向著目標316A的軌跡線路331第一部分來導(dǎo)航指針336-1。移情界面以可編程方式來確定指向指針336-1移動的方向包括了一組在目標316A中所有感興趣的用戶界面元件(其中,包含了最小化按鈕318、最大化按鈕320、關(guān)閉按鈕322和幫助按鈕)。移情界面可計算出各個按鈕318-326的分數(shù)情況,它反映用戶302(或者,多個用戶)可以選擇一個對應(yīng)按鈕318-326的幾率。如果一個按鈕318-326具有很高的分數(shù),則它的操作就可以變成為在圖段334A-1-334D-1所包含的一個菜單項目中的一個操作。于是,在不必實際訪問目標316A的情況下,用戶302仍可以通過選擇在扇形菜單334-1的圖段334A-1-334D-1中的一個菜單項目來激活一個所需要的操作。
圖段334A-1包含了一個具有象最小化按鈕318的屏幕符號,一旦觸發(fā)最小化按鈕就可以激活最小化按鈕318的操作。圖段334B-1包含了一個象最大化按鈕320的屏幕符號,一旦觸發(fā)最大化按鈕就可以激活最大化按鈕320的操作。圖段334C-1包含了一個象關(guān)閉按鈕322的屏幕符號,一旦觸發(fā)該關(guān)閉按鈕就可以激活關(guān)閉按鈕322的操作。圖段334D-1包含了一個象幫助按鈕326的屏幕符號,一旦觸發(fā)該幫助按鈕就可以激活幫助按鈕326的操作。于是,扇形菜單334-1推斷用戶302的意圖去訪問目標316A,在該目標中,按鈕318-326的操作顯示為扇形菜單334-1圖段334A-1-334D-1所包含的可選擇菜單項目。
假定代替完成指針336-1的導(dǎo)航到目標316A的終點,則用戶302導(dǎo)航指針336-1從目標316A移出并且移向另一目標316B,即編輯菜單312。指針336-2表示了第二時間快照,在該快照中,用戶302已經(jīng)導(dǎo)航至了指針336-2定位不同于指針336-1定位的位置上。已經(jīng)從扇形菜單334-1的菜單項目的操作轉(zhuǎn)換成扇形菜單334-2的菜單項目的操作。
隨著用戶302將指針336-2移向目標316B并且從目標316A移開時,移情界面就推斷用戶302要求選擇編輯菜單312和它的一個菜單項目。移情界面計算編輯菜單312的各個菜單項目的分數(shù)。對于已具有足夠高的分數(shù)的編輯菜單312中的這些菜單項目來說,扇形菜單334-2的圖段334A-2-334D-2包含了這些菜單項目。(另外,編輯菜單312的所有菜單項目都可以由扇形菜單334-2所包含,但包含對應(yīng)菜單項目的各個圖段表示根據(jù)它的計算分數(shù)是不同的。這些表示可以在尺寸上、顏色上、透明性上以及其它等等方面不相同。)剪切操作是由圖段334A-2包含的一個菜單項目表示;復(fù)制操作是由圖段334B-2包含的一個菜單項目表示;粘貼操作是由圖段334C-2所包含的一個菜單項目表示;取消操作是由圖段334D-2所包含的一個菜單項目表示。這些操作都為用戶所準備著,以便于在不必需實際訪問編輯菜單312的條件下進行選擇。圖3D說明了如何來選擇扇形菜單的一個菜單項目。
圖3D說明了另一種扇形菜單334-3。盡管在扇形菜單334-1只作為屏幕符號來表示菜單項目并且扇形菜單334-2只作為文字描述來表示菜單項目的,但扇形334-3可作為包含屏幕符號和文字描述的組合來表示菜單項目。圖段334A-3包含一個具有象一對剪刀的屏幕符號的菜單項目,表示剪切操作。圖段334B-3包含一個具有象一組文檔拷貝的屏幕符號的菜單項目,表示復(fù)制操作。圖段334C-3包含一個具有象一塊剪輯板的屏幕符號的菜單項目,以表示粘貼操作。圖段334D-3包含一個具有文字“取消”的屏幕符號的菜單項目,以表示取消操作。
假定用戶所導(dǎo)航的指針336-3是沿著軌跡線路332-1的。為了選擇由圖段334A-3所包含的菜單項目表示的剪切操作,用戶302將故意和突然離開軌跡線路332-1,進入新的軌跡線路332-2,并且在圖段334A-3上通過。通過在圖段334A-3上拖曳指針336-3,就可以觸發(fā)剪切操作。在其它圖段334B-3-334D-3中所包含的菜單項目也可以類似選擇。
許多其它適用的技術(shù)都可能用于選擇由菜單項目所表示的操作。例如,一種適用的技術(shù)包括使用鍵盤提示來標明菜單項目中的文字描述的一個字母(例如,“UNDO”),從而當用戶按動的一個鍵(例如,“U”)結(jié)合另一鍵(例如,CRTL鍵)時,就能選擇與菜單項目相關(guān)的操作(例如,取消操作)。另一種適用的技術(shù)包括用編程方式將一個扇形菜單的各個圖段與數(shù)字相關(guān)聯(lián),從而當選擇該數(shù)字(例如,鍵“1”與CTRL鍵同時按動)時,就能夠選擇對應(yīng)于部分所包含的菜單項目的操作。另外,還有一種適用的技術(shù)包括在對應(yīng)部分的鼠標器上的提示按鈕,從而當激活鼠標器的按鈕時,就選擇了與由菜單項目所包含的菜單項目有關(guān)的操作。另一種適用技術(shù)包括將鼠標上的按鈕與相應(yīng)的圖段相關(guān)聯(lián),從而當觸發(fā)鼠標的按鈕時,選擇由菜單項目包含的與菜單項目相關(guān)聯(lián)的操作。
當扇形菜單334-3對用戶302不再有用時,該菜單就會消失??梢允褂萌魏芜m用的技術(shù)在合適的時間使得扇形菜單334-3消失。一種適用的技術(shù)包括在選擇由菜單項目所表示的操作結(jié)束時去除扇形菜單334-3。另一種適用的技術(shù)包括在扇形菜單334-3呈現(xiàn)之后的一段時間之后去除扇形菜單334-3。還有另外一種適用的技術(shù)包括通過鼠標器306的觸發(fā)所產(chǎn)生的突然移動,其目的不是用于選擇由菜單項目所表示的一項操作。
圖3E說明了一種適用于呈現(xiàn)扇形菜單的系統(tǒng)338。系統(tǒng)338是一組用于呈現(xiàn)諸如扇形菜單334-3的扇形菜單的元件。系統(tǒng)338包括了一個窗口環(huán)境340。窗口環(huán)境340包含有關(guān)窗口和在這些窗口中的用戶界面元件的信息并提供這些信息。窗口環(huán)境340也提供了這些用戶界面元件和窗口所在的位置。在一例典型的窗口環(huán)境的實施例中,所獲得信息塊可以是樹。樹是一種數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)可以包括一個或多個以分級方式相互連接在一起的結(jié)點。一個結(jié)點可以是根結(jié)點并且表示圖形用戶界面的主窗口;除了根結(jié)點以外的各個結(jié)點是子結(jié)點并且一般只有一個其它結(jié)點,這也是一個窗口;以及各個結(jié)點都具有零或者多個結(jié)點可作為子結(jié)點,各個結(jié)點也都是一個窗口。通過遍歷該樹,就能夠獲得所有的用戶界面元件,其中例如,菜單、按鈕、工具欄以及列表框,并且它們在計算機屏幕上所定位的位置。樹的一部分也可以設(shè)置在高速緩存器350中。
鼠標器306的移動可以由一個鼠標信息收集器342來檢測。鼠標信息收集器342是在所包括的參考資料中描述的,但為了簡潔而不再作另外的討論。鼠標信息收集器342向緩存器350提供了某些信息塊,其中例如,位置、速度以及加速度。
緩存器350不僅以編程的方式包含了用戶界面元件,例如,菜單、按鈕、工具欄和列表框,還包含了指針336-3的導(dǎo)航信息。各種信息塊都可以從高速緩存器350推斷,例如,用戶302可能遇到的用戶界面元件,如果用戶302繼續(xù)在特殊軌跡線路上,例如,軌跡線路332-1。
系統(tǒng)338也包括一個中央分級數(shù)據(jù)庫346,該數(shù)據(jù)庫可用于存儲所需的信息,以配置個人計算機304的操作系統(tǒng)、應(yīng)用程序,以及硬件設(shè)備。這樣分級數(shù)據(jù)庫包含著操作系統(tǒng)的信息,該操作系統(tǒng)一般是在扇形菜單334-3操作過程中所引用的。一個中央分級數(shù)據(jù)庫的典型實施是微軟WINDOW操作系統(tǒng)的注冊。存儲于中央分級數(shù)據(jù)庫346中有關(guān)扇形菜單334-3的信息塊包括用戶已經(jīng)使用一個特殊用戶界面元件的次數(shù)。該次數(shù)可以存儲于一個計數(shù)器中。另外,中央分級數(shù)據(jù)庫346存儲了一個與用戶302最后一次使用過的特殊用戶界面元件有關(guān)的時間標記。所存儲的其它信息塊包括扇形菜單334-3如何呈現(xiàn)給用戶302;要與扇形菜單334-3一起顯示的具體的菜單項目;在扇形菜單334-3圖段中的菜單項目是靜態(tài)的還是動態(tài)的;在扇形菜單334-3圖段中所顯示的菜單項目是與應(yīng)用有關(guān)的(例如,字處理處理應(yīng)用程序可以具有由扇形菜單334-3的菜單項目所表示的操作,且這些操作可以不同于電子制表軟件應(yīng)用程序的操作);當扇形菜單334-3呈現(xiàn)給用戶334-3的狀態(tài);扇形菜單334-3呈現(xiàn)時的尺寸;扇形菜單334-3的形狀;以及一個特殊用戶界面元件是否必須總是與扇形菜單334-3一起呈現(xiàn)。
配置元件344從中央分級數(shù)據(jù)庫346取得這些信息塊并且將其放置在緩存器350中,以便于移情界面348的分析。移情界面348是在所包括參考文獻中討論的,為了簡潔討論故本文就不再重復(fù)該討論。使用在緩存器350中的信息,移情界面348會在用戶302所導(dǎo)航的指針336-3的前進方向上計劃一個目標區(qū)域。可以由移情界面348對在該計劃區(qū)域中的用戶界面元件進行分析并給出一個分數(shù)。這些具有足夠高分數(shù)的用戶界面元件可以作為扇形菜單334-3圖段中菜單項目來顯示。
各個菜單項目的表示可以根據(jù)它對應(yīng)的分數(shù)相互變化。用戶302最喜歡選擇的這些用戶界面元件可以由系統(tǒng)338用比其它菜單項目更顯著的方式來表示。例如,包含具有高分數(shù)的菜單項目的圖段區(qū)域可以比其它圖段大。或者,表示在圖段中的高分數(shù)菜單項目所使用的顏色可以比其它圖段更亮或更粗些。使用阿爾法混合的方法,凡具有較高分數(shù)的菜單項目都可以顯示得比透明的更暗淡些。也有可能采用許多其它合適的現(xiàn)有技術(shù)。
移情引擎348掌握著一個圖形引擎352,以便于扇形菜單334-3可以與包含菜單項目的圖段一起呈現(xiàn)。圖形引擎352能夠直接訪問個人計算機的圖形硬件,以便于在個人計算機304上呈現(xiàn)出扇形菜單334-3。一旦已經(jīng)顯示了扇形菜單334-3,用戶302就可以使用鼠標器306移動指針336-3來選擇菜單項目,例如,在圖段334A-3中的剪切操作。這類用戶的行為可以由用戶行為元件354來記錄并且存儲于高速緩存器350。配置元件344可周期性地(較佳的是,每間隔10至30分鐘)復(fù)制高速緩存器350的一部分并且將這部分內(nèi)容存儲于中央分級數(shù)據(jù)庫346,以便于幫助移情界面348未來的分析。
圖4A-4G說明了一種用于在用戶在用戶界面中導(dǎo)航指針時呈現(xiàn)扇形菜單的方法400。為了清楚起見,方法400的下列描述將參考結(jié)合系統(tǒng)300(圖3A-3D)和系統(tǒng)338(圖3E)所說明的各種元件。從開始方框起,方法400就進入在延續(xù)端(“端點A”)和出口端(“端點B”)之間所定義的一系列方法步驟404。這組方法步驟404描述了收集有關(guān)指針信息的過程,例如,指針336-3和它的窗口環(huán)境。
從端點A(圖4B)開始,方法400進入方框410,在該方框中,用戶302導(dǎo)航指針336-3向著用戶界面目標,例如,目標316A。鼠標信息收集器342獲取鼠標器306隨著用戶302導(dǎo)航指針336-3時的鼠標信息。見方框412。接著,方法400將該鼠標信息(例如,位置、速度、加速度,等等)放置于高速緩存器350。見方框414。在方框416,方法400從窗口環(huán)境340中獲取所感興趣的用戶界面元件有關(guān)的信息。正如以上所討論的,一個典型的窗口環(huán)境的實施包括一個樹數(shù)據(jù)結(jié)構(gòu)。隨后,可以遍歷該樹數(shù)據(jù)結(jié)構(gòu)并且可以從中獲取所感興趣的用戶界面元件。在從樹數(shù)據(jù)結(jié)構(gòu)中獲取了信息之后,方法400就將該用戶界面元件信息(例如,按鈕??刂?,等等)放置于高速緩存器350。見方框418。配置元件344將用戶界面元件的使用次數(shù)(受歡迎程度)和時間標志(使用期)放置于高速緩存器,以便于移情界面348的以后分析。見方框420。從此之后,方法400就進入到另一延續(xù)端(“端點A1”)。
從端點A1(圖4C)開始,配置元件344將有關(guān)靜態(tài)或動態(tài)的菜單項目的信息放置于高速緩存器350。見方框422。靜態(tài)菜單項目是不會在指針336-3移動時變化,然而動態(tài)菜單項目是隨著指針336-3移動方向而變化。在方框424,配置元件344將在扇形菜單334-3中所必須呈現(xiàn)的一個或多個菜單項目放置于高速緩存器。配置元件344隨后將適用于特殊軟件應(yīng)用的特殊菜單項目的有關(guān)信息放置于高速緩存器350。見方框426。例如,假定一個字處理應(yīng)用始終需要一個文件菜單項目呈現(xiàn)在扇形菜單334-3中。在方框426中的處理步驟將強加一個要求,即無論何時到扇形菜單334-3呈現(xiàn)給用戶302,呈現(xiàn)文件菜單項目。
隨后,方法400進入到方框428,在該方框428中,配置元件344將扇形菜單334-3呈現(xiàn)給用戶302時的相關(guān)信息放置于高速緩存器350。在方框430,配置元件344將有關(guān)扇形菜單334-3形狀的信息放置于高速緩存器350。盡管扇形菜單的幾何形狀顯示成圓形,但可以使用其它適合的幾何形狀,例如,矩形、三角形或橢圓形。隨后,配置元件344將有關(guān)扇形菜單334-3尺寸的信息放置于高速緩存器350。見方框432。隨后,方法400就進入到另一延續(xù)端(“端點A2”)。
從端點A2(圖4D)開始,方法400進入方框434,在該方框中,配置元件344就將阿爾法混合信息放置于高速緩存器350。阿爾法混合是一項允許兩個圖形圖像合并的技術(shù),其中各個圖形都包括等于100%的百分比的和。阿爾法混合技術(shù)創(chuàng)建一個合并圖像的不透明度或透明度,例如,扇形菜單334-3的圖段。隨后,方法400就進入方框436,在該方框中,配置元件344將扇形菜單334-3圖段的文字格式放置于高速緩存器350。文字信息可以除其它文字格式之外還包括斜體、粗體或者下劃線。在方框438,配置元件344將扇形菜單334-3圖段的顏色格式放置于高速緩存器350。配置元件344可以將菜單項目所要使用的圖標放置于高速緩存器350。見方框440。方法400隨后進入到出口端B。
從端點B(圖4A)開始,方法400進入到在入口端(“端口C”)和出口端(“端口D”)之間所定義的一組方法步驟406。這組方法步驟406描述了以導(dǎo)航指針336-3時推斷用戶302的意圖用于呈現(xiàn)扇形菜單334-3。從端點C(圖4E)開始,方法400就進入判決方框442,在該方框中,進行測試以檢查扇形菜單334-3是否是動態(tài)的。如果在判決方框442測試的答案是否,則方法400就進入到出口端D。否則,如果在判決方框442的測試答案為是,則移情界面348在用戶302所導(dǎo)航的指針方向中計劃一個目標區(qū)域。見方框444。在方框446,移情界面348確定在計劃的目標區(qū)域中所感興趣的用戶界面元件。移情界面348隨后計算各個感興趣用戶界面元件的分數(shù)。見方框448。移情界面348隨后將與所感興趣的用戶界面元件有關(guān)的分數(shù)放置于高速緩存器350。見方框450。從這里開始,方法400就進入出口端D。
從端點D(圖4A)開始,方法400就進入在延續(xù)端(“端點E”)和出口端(“端點F”)之間所定義的一組方法步驟408。這組方法步驟408描述了隨著指針336-3移動來顯示扇形菜單334-3。從端點F(圖4F)開始,該方法400進入判決方框452,在該方框中,進行測試以檢查是否顯示扇形菜單334-3。如果測試的答案為是,則方法400就根據(jù)對用戶界面元件的相反可能性分數(shù)和在高速緩存器350中所表示的規(guī)格來格式化每個菜單項目。見方框454。隨后,方法400使得圖形引擎352呈現(xiàn)出扇形菜單334-3并且可以和指針336-3一起移動扇形菜單334-3。見方框456。方法400隨后進入另一延續(xù)端(“端點E1”)。
如果在判決方框452的答案是否,則配置元件344獲得在高速緩存器350中的信息并且將該信息寫入到中央分級數(shù)據(jù)庫346。見方框458。較佳的是,配置元件344每間隔10-30分鐘檢查高速緩存器350一次,并且將新的信息寫入到中央分級數(shù)據(jù)庫346。對于移情界面348的將來分析來說,諸如用戶選擇一個特殊用戶界面元件的次數(shù)的信息是有用的。方法400隨后進入另一延續(xù)端(“端點C1”),以循環(huán)回到判決方框442,在該方框中,可以重復(fù)上述處理步驟。
從端點E1(圖4G)開始,方法400進入判決方框460,在該方框中,進行測試,以確定指針336-3是否已經(jīng)改變了軌跡方向。如果答案是否定的,則方法400就進入端點C1,以循環(huán)回到判決方框442,在該方框中,可以重復(fù)上述處理步驟。否則,在判決方框460的測試答案為是,并且方法400進入另一判決方框462,在該方框中,進行另一測試,以確定指針336-3是否已經(jīng)在一個菜單項目上通過。如果在判決方框462中的測試答案是否,則方法400就進入端點C1,并且重復(fù)從判決方框442開始的上述處理步驟。
如果在判決方框462中的測試答案為是,則方法400就觸發(fā)應(yīng)于指針336-3已經(jīng)通過的菜單項目的用戶界面元件。見方框464。例如,如果指針336-3已經(jīng)在包含屬于剪切操作的菜單項目的圖段334A-3上通過,就激活剪切操作。移情引擎348隨后將用戶的行為寫入高速緩存器350,該信息最終可以存儲于中央分級數(shù)據(jù)庫346,以便于以后的分析。見方框466。從這里開始,方法400進入端點C1,以循環(huán)回到判決方框442,在該方框中,可以重復(fù)上述處理步驟。
盡管已說明和討論本發(fā)明的較佳實施例,應(yīng)該意識到的是,可以在不背離本發(fā)明的精神和范圍的條件下產(chǎn)生各種各樣的變化。
權(quán)利要求
1.一種適用于提供內(nèi)容敏感菜單的計算機系統(tǒng),該計算機系統(tǒng)包括一個屏幕光標,它可以隨著指針設(shè)備的移動而移動;以及,一個扇形菜單,它在屏幕光標的周圍,該扇形菜單是由一個圓的兩個半徑和一個內(nèi)圓弧為幾何圖形邊界的。
2.如權(quán)利要求1所述計算機系統(tǒng),其特征在于,所述屏幕光標位于所述扇形菜單的中心。
3.如權(quán)利要求1所述計算機系統(tǒng),其特征在于,所述扇形菜單缺乏一個圖段,以定義一個缺乏的圖段。
4.如權(quán)利要求3所述計算機系統(tǒng),其特征在于,所述扇形菜單與屏幕光標一起移動。
5.如權(quán)利要求4所述計算機系統(tǒng),其特征在于,所述缺乏圖段是以屏幕光標移動的方向作為定向的。
6.一種適用于提供內(nèi)容敏感菜單的計算機系統(tǒng),該計算機系統(tǒng)包括一個屏幕光標,它可以隨著指針設(shè)備的移動而移動;以及,一個扇形菜單,它出現(xiàn)在屏幕光標的附近,該扇形菜單包括由多個截取扇形菜單的多個半徑所構(gòu)成的多個圖段,各個圖段包含一項適用于扇形菜單的菜單項目。
7.如權(quán)利要求6所述計算機系統(tǒng),其特征在于,所述扇形菜單在所述計算機系統(tǒng)從指針設(shè)備接收點擊時出現(xiàn)。
8.如權(quán)利要求6所述計算機系統(tǒng),其特征在于,在扇形菜單中的菜單項目是預(yù)先確定的。
9.如權(quán)利要求6所述計算機系統(tǒng),其特征在于,所述扇形菜單在屏幕光標導(dǎo)航時自動出現(xiàn)。
10.如權(quán)利要求6所述計算機系統(tǒng),其特征在于,在扇形菜單中的菜單項目可以從第一組用戶最近所使用的操作、第二組用戶最頻繁使用的操作、第三組與應(yīng)用程序的上下文最相關(guān)的操作,以及上述第一、第二和第三組操作的組合所構(gòu)成的組中選擇。
11.一種適用于提供內(nèi)容敏感菜單的計算機系統(tǒng),該計算機系統(tǒng)包括一個屏幕光標,它可以向著指針設(shè)備的目標移動;以及,一個扇形菜單,它隨著屏幕光標移動,該扇形菜單具有多個菜單項目,各個菜單項目表示位于目標上的用戶界面元件的操作。
12.如權(quán)利要求11所述計算機系統(tǒng),其特征在于,為各個用戶界面元件評分,表示用戶將選擇所述用戶界面元件的可能性。
13.如權(quán)利要求12所述計算機系統(tǒng),其特征在于,具有較高分數(shù)的菜單項目可以用不同于其它菜單項目的尺寸來呈現(xiàn)。
14.如權(quán)利要求12所述計算機系統(tǒng),其特征在于,具有較高分數(shù)的菜單項目可以用不同于其它菜單項目的文字格式來呈現(xiàn)。
15.如權(quán)利要求12所述計算機系統(tǒng),其特征在于,具有較高分數(shù)的菜單項目可以用不同于其它菜單項目的顏色來呈現(xiàn)。
16.一種在計算機系統(tǒng)中實現(xiàn)內(nèi)容敏感菜單在用戶導(dǎo)航指針時呈現(xiàn)的方法,該方法包括收集與指針導(dǎo)航的窗口環(huán)境有關(guān)的數(shù)據(jù);推斷在所述指針導(dǎo)航的目標上的用戶界面元件;以及,顯示與所述指針一起移動的扇形菜單,顯示的行為包括顯示由多個半徑截取扇形菜單所形成的多個圖段,各圖段包含一個菜單項目且該菜單項目包括所述指針導(dǎo)航指向目標上的用戶界面元件。
17.如權(quán)利要求16所述方法,其特征在于,顯示包括顯示預(yù)定的菜單項目,該菜單項目在顯示所述扇形菜單時必須呈現(xiàn)。
18.如權(quán)利要求16所述方法,其特征在于,推斷包括為在目標上的各個用戶界面元件分配分數(shù),該分數(shù)表示用戶將選擇所述用戶界面元件的可能性。
19.如權(quán)利要求18所述方法,其特征在于,顯示包括顯示具有較高分數(shù)的菜單項目不同于顯示具有較低分數(shù)的菜單項目。
20.如權(quán)利要求16所述方法,其特征在于,還包括當指針在所選擇的菜單項目上經(jīng)過時,接收該菜單項目的選擇。
21.一種具有實現(xiàn)適用于提供內(nèi)容敏感菜單方法的計算機可執(zhí)行指令的計算機可讀介質(zhì),其特征在于,該方法包括收集與指針導(dǎo)航的窗口環(huán)境有關(guān)的數(shù)據(jù);推斷在所述指針導(dǎo)航的目標上的用戶界面元件;以及,顯示與所述指針一起移動的扇形菜單,顯示的行為包括顯示由多個半徑截取扇形菜單所形成的多個圖段,各圖段包含一個菜單項目且該菜單項目包括所述指針導(dǎo)航指向目標上的用戶界面元件。
22.如權(quán)利要求21所述方法,其特征在于,顯示包括顯示預(yù)定的菜單項目,該菜單項目在顯示所述扇形菜單時必須呈現(xiàn)。
23.如權(quán)利要求21所述方法,其特征在于,推斷包括為在目標上的各個用戶界面元件分配分數(shù),該分數(shù)表示用戶將選擇所述用戶界面元件的可能性。
24.如權(quán)利要求23所述方法,其特征在于,顯示包括顯示具有較高分數(shù)的菜單項目不同于顯示具有較低分數(shù)的菜單項目。
25.如權(quán)利要求21所述方法,其特征在于,還包括當指針在所選擇的菜單項目上經(jīng)過時,接收該菜單項目的選擇。
全文摘要
扇形菜單跟蹤在指針設(shè)備移動時指針的位置。各個扇形菜單是以一個圓的兩個半徑和一個內(nèi)圓弧為邊界的幾何圖形。菜單項目包含于由多個半徑截取的扇形菜單所形成的圖段中。在該圖段中所包括的用戶選擇菜單項目可以通過從軌跡線路變化到在所需的菜單項目上經(jīng)過,來調(diào)用它的操作。扇形菜單缺乏一個圖段,該圖段可定義為一個缺少的圖段,它可以用指針移動的方向來定向。具有不同尺寸的圖段可以有效地表示用戶將選擇的由對應(yīng)圖段包含的對應(yīng)菜單項目的指定操作的可能性。
文檔編號G09G5/08GK1577232SQ200410069
公開日2005年2月9日 申請日期2004年6月28日 優(yōu)先權(quán)日2003年6月27日
發(fā)明者D·B·維克爾, C·A·艾特扎迪, T·薩普 申請人:微軟公司