提出了用于渲染元素的樹結(jié)構(gòu)的數(shù)據(jù)處理設(shè)備和計(jì)算機(jī)實(shí)現(xiàn)的方法。具體地,本公開涉及用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的數(shù)據(jù)處理設(shè)備和計(jì)算機(jī)實(shí)現(xiàn)的方法,以及涉及相應(yīng)的計(jì)算機(jī)可讀存儲介質(zhì)。
背景技術(shù):
::用于例如多媒體數(shù)據(jù)的語義元數(shù)據(jù)注釋的概念經(jīng)常是根據(jù)分級式超概念/子概念方案來排列的,導(dǎo)致了概念分類系統(tǒng)(concepttaxonomies)。例如,交通工具分類系統(tǒng)可以包括子概念地面交通工具、水上船只、飛行器等,而地面交通工具還包括如小汽車、卡車、公共汽車等的子概念。在分類系統(tǒng)中,任何子概念是其所有超概念的一類。因此,如果要注釋的特定概念在分類系統(tǒng)中丟失,則注釋者可能回退到最佳匹配的超概念。例如,主戰(zhàn)坦克可以被注釋為地面交通工具,而ufo(不明飛行物)可被注釋為交通工具。大型且復(fù)雜的分類系統(tǒng)可以具有若干獨(dú)立的頂級概念、每個(gè)頂級概念下的大量分級級別、以及單獨(dú)超概念的很多子概念。這大量的深度嵌套的概念可能難以在使用該分類系統(tǒng)的應(yīng)用的圖形用戶界面(gui)中方便地渲染,例如,在示出了該分類系統(tǒng)以用于選擇要注釋的概念的視圖中。渲染分類系統(tǒng)的一種可能性是采用表視圖。此處,每個(gè)頂級概念可以得到其自己的表或可以是表列或行的標(biāo)題(header)。例如,列標(biāo)題示出了超概念且該列的內(nèi)容示出了對應(yīng)的子概念。如果需要進(jìn)一步的粒度,則列可以包含子表,例如以粗體示出的直接子概念以及以正常字體示出的其下級概念。這種表視圖可以在小空間中示出很多概念及其分級并可以提供良好的概念概覽。然而,在不引起混淆的情況下,其一次僅可以示出幾個(gè)分級級別。如果用戶需要回顧其他子級別,則用戶必須選擇要示出的其他子級別的概念,例如通過更新當(dāng)前示出的表或者示出附加表。在深度嵌套的分類系統(tǒng)中,為了到達(dá)特定概念,多個(gè)這種選擇可能是必要的。如果未找到感興趣的概念,則用戶可能想要再次回退到示出了更高級別概念的表。在分類系統(tǒng)的較粗和較細(xì)粒度視圖之間的該切換類似于數(shù)據(jù)庫和透視表(pivottable)的在線分析處理(olap)中與渲染和處理多維數(shù)據(jù)有關(guān)的下鉆(drilldown)/上鉆(drillup)操作。渲染分類系統(tǒng)的另一可能性是采用樹視圖。這種視圖用于示出各種應(yīng)用中的深度嵌套的分級,例如文件系統(tǒng)瀏覽器或文檔提綱(outlining)工具。這種應(yīng)用可以提供控制,以將所選樹級別下的當(dāng)前示出的樹級別的數(shù)目增加/減少一個(gè)或多個(gè)級別,展開/收起所選樹級別下的所有樹級別,將特定配置的子樹收起至所選級別且之后再次示出如之前配置的該子樹,示出頂級下的特定數(shù)目的樹級別等。具有這種功能的樹視圖還可以用于渲染分類系統(tǒng),使得用戶可以瀏覽并展開感興趣的子樹,以找到并選擇感興趣的概念。這種樹視圖可以渲染具有很多分級級別的超大型分類系統(tǒng)。然而,其不太適合提供概念的概覽。如果展開很多樹級別,則在展開式視圖中需要很多滾動(dòng)來找到概念,且難以跟蹤概念的關(guān)系。如果對于更緊湊的視圖來說僅展開較少的樹級別,則需要很多展開/收起操作來下鉆到低級別概念或從低級別概念上鉆。對于小型分類系統(tǒng),使用分類系統(tǒng)的應(yīng)用的gui可以包含表視圖,但是表視圖可能難以正確處理大型分類系統(tǒng)的大量分級級別,導(dǎo)致需要頻繁地更新表視圖或快速地示出子表。另一方面,在一些應(yīng)用中,手動(dòng)可配置的樹視圖用于大型分類系統(tǒng),但是其由于緊湊視圖對所需視圖重配置操作數(shù)量的問題而缺少了便利性。同樣地問題不僅適用于在分類系統(tǒng)中搜索概念,還適用于在其他復(fù)雜樹視圖中搜索元素,例如在深度嵌套的文件目錄結(jié)構(gòu)中搜索文件或者在深度嵌套的數(shù)據(jù)庫結(jié)構(gòu)中搜索數(shù)據(jù)庫條目。依然需要解決手動(dòng)配置的樹視圖的便利性問題(以例如用于渲染大型分類系統(tǒng)),并提供更高效的人機(jī)界面,該人機(jī)界面允許對在樹視圖中顯示的元素(例如,樹視圖中顯示的分類系統(tǒng)中的概念)的樹結(jié)構(gòu)中的元素(即,節(jié)點(diǎn))進(jìn)行增強(qiáng)式尋找和選擇。技術(shù)實(shí)現(xiàn)要素:建議了根據(jù)所附權(quán)利要求的用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面(gui)中渲染元素的樹結(jié)構(gòu)的計(jì)算機(jī)實(shí)現(xiàn)的方法和數(shù)據(jù)處理設(shè)備、以及計(jì)算機(jī)可讀存儲介質(zhì)。根據(jù)實(shí)施例,一種用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的計(jì)算機(jī)實(shí)現(xiàn)的方法包括:-生成以多個(gè)分支來組織的樹結(jié)構(gòu)的樹視圖;-確定該指向光標(biāo)相對于該樹視圖的位置,該位置包含根據(jù)第一方向的第一位置值和根據(jù)與該第一方向正交的第二方向的第二位置值;-將根據(jù)第一方向與指向光標(biāo)的位置對齊的分支自動(dòng)選擇為活動(dòng)分支;-根據(jù)相對于活動(dòng)分支的子級別的縮進(jìn)的第二位置值來確定要展開的所述活動(dòng)分支的子級別;以及-通過展開所確定的活動(dòng)分支的子級別并收起其他分支來自動(dòng)更新樹視圖。相應(yīng)地,一種用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的數(shù)據(jù)處理設(shè)備包括:-圖形表示單元,被配置為生成以多個(gè)分支來組織的樹結(jié)構(gòu)的樹視圖;-位置確定單元,被配置為確定指向光標(biāo)相對于樹視圖的位置,該位置包含根據(jù)第一方向的第一位置值和根據(jù)與第一方向正交的第二方向的第二位置值;-活動(dòng)分支選擇單元,被配置為將根據(jù)第一方向與指向光標(biāo)的位置對齊的分支自動(dòng)選擇為活動(dòng)分支;以及-展開確定單元,被配置為根據(jù)相對于活動(dòng)分支的子級別的縮進(jìn)的第二位置值來確定要展開的所述活動(dòng)分支的子級別;-圖形表示單元,還被配置為通過展開所確定的活動(dòng)分支的子級別并收起其他分支來自動(dòng)更新樹視圖。該設(shè)備中包括的單元(例如,圖形表示單元、位置確定單元、活動(dòng)分支選擇單元和展開確定單元)可以作為單獨(dú)裝置來提供,作為至少一個(gè)裝置或邏輯電路來聯(lián)合提供,或者功能上由微處理器、微控制器或其他處理裝置、計(jì)算機(jī)或其他可編程設(shè)備來實(shí)現(xiàn)。根據(jù)實(shí)施例,一種用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的數(shù)據(jù)處理設(shè)備包括:-處理裝置;-顯示裝置;以及-存儲指令的存儲器裝置,該指令在被執(zhí)行時(shí)使得處理裝置:-生成樹視圖,該樹視圖使用顯示裝置示出了以多個(gè)分支來組織的樹結(jié)構(gòu);-確定指向光標(biāo)相對于樹視圖的位置,該位置包含根據(jù)第一方向的第一位置值和根據(jù)與第一方向正交的第二方向的第二位置值;-將根據(jù)第一方向與指向光標(biāo)的位置對齊的分支自動(dòng)選擇為活動(dòng)分支;-根據(jù)相對于活動(dòng)分支的子級別的縮進(jìn)的第二位置值來確定要展開的活動(dòng)分支的子級別;以及-通過展開所確定的活動(dòng)分支的子級別并收起其他分支來自動(dòng)更新由顯示裝置示出的樹視圖。各裝置通過總線或其他通信線路相連。此外,一種計(jì)算機(jī)可讀存儲介質(zhì)在其中存儲有實(shí)現(xiàn)了根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的指令,該指令在由計(jì)算機(jī)執(zhí)行時(shí),使計(jì)算機(jī):-生成以多個(gè)分支來組織的樹結(jié)構(gòu)的樹視圖;-確定指向光標(biāo)相對于樹視圖的位置,該位置包含根據(jù)第一方向的第一位置值和根據(jù)與第一方向正交的第二方向的第二位置值;-將根據(jù)第一方向與指向光標(biāo)的位置對齊的分支自動(dòng)選擇為活動(dòng)分支;-根據(jù)相對于活動(dòng)分支的子級別的縮進(jìn)的第二位置值來確定要展開的活動(dòng)分支的子級別;以及-通過展開所確定的活動(dòng)分支的子級別并收起其他分支來自動(dòng)更新樹視圖。該計(jì)算機(jī)可讀存儲介質(zhì)有形地體現(xiàn)了指令程序,該指令程序在由計(jì)算機(jī)執(zhí)行時(shí)使計(jì)算機(jī)執(zhí)行所述方法步驟。圖形用戶界面響應(yīng)于控制指向光標(biāo)相對于所呈現(xiàn)的元素的樹結(jié)構(gòu)的位置的用戶輸入??梢允褂弥赶蚬鈽?biāo)操控裝置(例如,計(jì)算機(jī)鼠標(biāo)、軌跡球、軌跡點(diǎn)或觸摸板)來移動(dòng)或操控指向光標(biāo)。如果顯示裝置是觸摸屏裝置,則還可以使用例如用戶的手指或觸控筆來移動(dòng)或操控指向光標(biāo)。在實(shí)施例中,指向光標(biāo)可以響應(yīng)于在對由相機(jī)提供的示出了用戶的實(shí)況視頻的分析期間的手或手指軌跡和手勢識別來移動(dòng)。樹結(jié)構(gòu)以多個(gè)分支或連接節(jié)點(diǎn)的路徑來組織,即包括多個(gè)分支或連接節(jié)點(diǎn)的路徑,其可以包含子級別,即父節(jié)點(diǎn)下的樹級別,其中,子級別中包含的元素或節(jié)點(diǎn)作為同一父節(jié)點(diǎn)的兄弟節(jié)點(diǎn)連接到同一縮進(jìn)(indentation)。樹視圖是樹結(jié)構(gòu)的圖形表示。在gui元素(例如,窗口或幀)中示出樹視圖。其允許僅通過評估指向光標(biāo)相對于樹視圖的位置來自動(dòng)選擇活動(dòng)分支,即在不點(diǎn)擊的情況下確定指向光標(biāo)的位置。活動(dòng)分支是被選擇以由用戶瀏覽的分支,例如通過展開子級別來瀏覽。指向光標(biāo)的該相對位置可以通過在樹視圖上移動(dòng)指向光標(biāo)或者通過滾動(dòng)示出了樹視圖的查看窗口而變化,同時(shí)指向光標(biāo)的絕對位置(即,相對于查看窗口的邊界的位置或者相對于顯示包含樹視圖在內(nèi)的查看窗口的顯示裝置的屏幕的邊界的位置)可以保持不變或可以變化。然后根據(jù)相對于活動(dòng)分支的子級別的縮進(jìn)的第二位置值來計(jì)算要展開活動(dòng)分支的多少個(gè)子級別。之后,在沒有用戶的手動(dòng)交互的情況下,自動(dòng)樹視圖重配置機(jī)制通過展開所確定的活動(dòng)分支的子級別并收起其他分支來進(jìn)行對樹視圖的自動(dòng)更新。根據(jù)所提出方案的自動(dòng)樹視圖重配置機(jī)制允許快速地檢驗(yàn)類似于復(fù)雜樹的數(shù)據(jù)結(jié)構(gòu)。其模仿了用戶使用手動(dòng)控制來瀏覽例如分類系統(tǒng)、文件系統(tǒng)或數(shù)據(jù)庫(該分類系統(tǒng)、文件系統(tǒng)或數(shù)據(jù)庫以樹結(jié)構(gòu)組織并在樹視圖中顯示為樹)的嵌套數(shù)據(jù)的行為,以找到并選擇感興趣的元素,即分別是概念、文件或數(shù)據(jù)庫條目,在頂級元素開始,然后一次僅下鉆到樹的一個(gè)分支,并且如果未找到感興趣的元素則可能再次上鉆,包括收起剩下的子級別。該機(jī)制使用指向光標(biāo)相對于樹視圖的位置來控制自動(dòng)展開/收起樹的哪些分支。其在不需要通過鼠標(biāo)點(diǎn)擊、鍵盤擊鍵、觸摸屏敲擊或類似操作的顯式展開/收起操作的情況下重配置樹視圖以用于樹的緊湊呈現(xiàn),并且需要比相應(yīng)手動(dòng)控制方案所必需的更少的指向光標(biāo)移動(dòng)。根據(jù)所提出的方案的機(jī)制至少具有以下效果:用戶可以用比通過使用手動(dòng)控制更快速和更方便的方式來執(zhí)行尋找/選擇感興趣元素的任務(wù),即提供了更高效的人機(jī)界面。在一個(gè)實(shí)施例中,在顯示圖形用戶界面中的樹視圖的顯示裝置的屏幕上,第一方向?qū)?yīng)于垂直方向以及第二方向?qū)?yīng)于水平方向。此處,指向光標(biāo)相對于樹元素的垂直位置用于控制選擇樹的哪個(gè)分支作為可以展開的活動(dòng)分支,而指向光標(biāo)相對于樹級別的縮進(jìn)的水平位置用于控制將展開活動(dòng)分支的多少個(gè)子級別。如果發(fā)現(xiàn)活動(dòng)分支的子級別的縮進(jìn)在指向光標(biāo)位置左側(cè),則將該子級別確定為要展開。在不同實(shí)施例中,第一方向?qū)?yīng)于水平方向且第二方向?qū)?yīng)于垂直方向。在一個(gè)實(shí)施例中,連續(xù)重復(fù)對指向光標(biāo)的位置的確定、對活動(dòng)分支的自動(dòng)選擇、對要展開的子級別的確定以及對樹視圖的自動(dòng)更新。該自動(dòng)機(jī)制不斷跟蹤指向光標(biāo)的任何移動(dòng),且如果必要,該自動(dòng)機(jī)制立刻自動(dòng)重配置樹視圖以用于樹的緊湊呈現(xiàn)。在實(shí)施例中,可以在自動(dòng)執(zhí)行展開/收起操作之前引入短延遲。在另一實(shí)施例中,將展開和/或收起操作加以延遲,直到執(zhí)行了(例如,對箭頭鍵的)附加擊鍵為止。在一個(gè)實(shí)施例中,如果要展開的子級別的數(shù)量小于當(dāng)前展開的子級別的數(shù)量,則通過收起活動(dòng)分支的超出子級別來更新樹視圖,且在沒有進(jìn)一步用戶交互的情況下沿第一方向自動(dòng)移動(dòng)經(jīng)更新的樹視圖,直到隱藏(即包括)被收起的超出子級別的對應(yīng)元素變得根據(jù)第一方向與指向光標(biāo)的位置對齊為止。換言之,如果由于展開/收起操作導(dǎo)致指向光標(biāo)的顯示位置變得與經(jīng)自動(dòng)重配置的樹視圖不一致,則沿第一方向(例如,垂直)自動(dòng)移動(dòng)經(jīng)更新的樹視圖,使得實(shí)際指向光標(biāo)位置反映相對于經(jīng)更新的樹視圖的新的邏輯指向光標(biāo)位置。如果第一方向是垂直方向且由于將指向光標(biāo)向左移動(dòng)而導(dǎo)致指向光標(biāo)與被收起的樹級別的直接或間接超元素未垂直對齊,簡單地收起該樹級別可能引起任意的樹元素(如果有的話)與指向光標(biāo)垂直對齊,這取決于由該樹級別的元素之前占據(jù)的空間和指向光標(biāo)相對于這些元素的垂直位置。這可能導(dǎo)致沒有自動(dòng)選擇活動(dòng)分支或者自動(dòng)選擇包括該任意樹元素在內(nèi)的新的活動(dòng)分支。另一方面,根據(jù)實(shí)施例來移動(dòng)樹視圖使包括超元素在內(nèi)的該分支保持為活動(dòng)分支,并實(shí)現(xiàn)了在樹中的進(jìn)一步無縫導(dǎo)航。在一些情況下,對包含樹視圖在內(nèi)的查看窗口的這種自動(dòng)重配置或手動(dòng)垂直滾動(dòng)可能引起樹的最上方的元素以與查看窗口的上邊緣間隔某個(gè)距離的方式來顯示。因此在一個(gè)實(shí)施例中,將樹視圖連同所顯示的指向光標(biāo)一起向所述邊緣偏移所述距離。在一個(gè)實(shí)施例中,元素的樹視圖對應(yīng)于分類系統(tǒng),即概念的分類方案,例如來自用于多媒體數(shù)據(jù)的分類系統(tǒng)的概念。此處,具有交互式樹視圖的圖形用戶界面對應(yīng)于分級元數(shù)據(jù)的分類系統(tǒng)瀏覽器,即在gui中渲染分類系統(tǒng),例如用于針對多媒體數(shù)據(jù)的語義元數(shù)據(jù)注釋。根據(jù)所提出方案的適用于在顯示為樹視圖中的樹的分類系統(tǒng)中尋找和選擇概念的任務(wù)的自動(dòng)樹視圖重配置機(jī)制允許對甚至大型分類系統(tǒng)的高效渲染。在另一實(shí)施例中,元素的樹結(jié)構(gòu)對應(yīng)于文件的目錄結(jié)構(gòu)。一般而言,如果樹視圖的預(yù)期用途是快速瀏覽并選擇樹的元素,根據(jù)所提出的方案的自動(dòng)樹視圖重配置機(jī)制也可以用于在各種應(yīng)用中示出除了分類系統(tǒng)之外的其他內(nèi)容的視圖。例如,與需要顯式操作來展開/收起子樹(例如,子文件夾)的使用標(biāo)準(zhǔn)樹視圖的應(yīng)用相比,使用所提出的樹視圖重配置機(jī)制的包含樹視圖在內(nèi)的任何數(shù)據(jù)庫、文檔提綱工具、文件瀏覽器或“打開文件”對話框可能需要更少的控制操作來尋找并選擇元素。在一個(gè)實(shí)施例中,計(jì)算機(jī)實(shí)現(xiàn)的方法包括:-響應(yīng)于由用戶輸入的模式選擇在自動(dòng)模式和手動(dòng)模式之間選擇;其中-僅在自動(dòng)模式下執(zhí)行指向光標(biāo)的位置的確定、活動(dòng)分支的自動(dòng)選擇、要展開的子級別的確定以及樹視圖的自動(dòng)更新,以及其中-在手動(dòng)模式下響應(yīng)于針對圖形用戶界面的其它手動(dòng)用戶輸入來更新樹視圖。執(zhí)行根據(jù)所提出的方案的方法的設(shè)備可以提供手動(dòng)樹視圖配置功能和所提出的自動(dòng)機(jī)制以及在這兩種模式之間切換的手段。在實(shí)施例中,當(dāng)打開自動(dòng)模式時(shí)其存儲手動(dòng)建立的視圖配置,并在再次關(guān)閉自動(dòng)模式時(shí)恢復(fù)之前存儲的配置。在一個(gè)實(shí)施例中,專門為了與樹視圖進(jìn)行用戶交互而生成指向光標(biāo)。這適用于例如不使用標(biāo)準(zhǔn)指向光標(biāo)的系統(tǒng)。對于使用例如鼠標(biāo)指針作為其標(biāo)準(zhǔn)輸入的裝置來說,可以提供不依賴于滾動(dòng)條的滾動(dòng)方案,反之不使用這種標(biāo)準(zhǔn)指向光標(biāo)的觸摸屏控制的裝置可以將標(biāo)準(zhǔn)滑動(dòng)手勢用于滾動(dòng)。在使用由指向輸入裝置(例如,鼠標(biāo)、軌跡球、觸摸板或軌跡點(diǎn))來控制的指向光標(biāo)的系統(tǒng)上,指向光標(biāo)位置由該指向光標(biāo)的位置來定義。在不使用這種標(biāo)準(zhǔn)指向光標(biāo)的系統(tǒng)上,例如觸摸屏控制的裝置上,代之以使用特別專用于樹視圖的查看窗口的指向光標(biāo)。該專用指向光標(biāo)的位置是通過在查看窗口上由例如用戶的手指或觸控筆拖動(dòng)指向光標(biāo)來控制的。具體地,在使用標(biāo)準(zhǔn)指向光標(biāo)的系統(tǒng)上以及在根據(jù)所提出方案的自動(dòng)機(jī)制活動(dòng)時(shí),使用該自動(dòng)機(jī)制的應(yīng)用在查看窗口的邊緣處不使用標(biāo)準(zhǔn)滾動(dòng)條來滾動(dòng)視圖,因?yàn)樵跇湟晥D上移動(dòng)指向光標(biāo)以訪問這種滾動(dòng)條可能引起對視圖的重配置。取而代之地,使用其他滾動(dòng)控制手段,例如鍵盤控制、鼠標(biāo)滾輪(例如,照常使用滾輪的垂直滾動(dòng),以及通過按壓滾輪結(jié)合鼠標(biāo)移動(dòng)的水平滾動(dòng),或者在支持的情況下滾輪的左傾/右傾)、或者在指向光標(biāo)移動(dòng)到查看窗口的邊緣時(shí)的自動(dòng)滾動(dòng)。另一方面,假如滑動(dòng)手勢并未在指向光標(biāo)位置處開始,這可被代之以解釋為拖動(dòng)指向光標(biāo),則觸摸屏控制的應(yīng)用可以在查看窗口上使用標(biāo)準(zhǔn)滑動(dòng)手勢來滾動(dòng)視圖。在一個(gè)實(shí)施例中,樹視圖包括對樹元素是否對應(yīng)于縮進(jìn)且具有子元素(即,隱藏子樹)的視覺指示。該視覺指示可以是圖標(biāo),例如加號、指向右側(cè)的三角形或箭頭。作為另一示例,視覺指示可以通過以不同風(fēng)格渲染樹元素(例如,不同顏色或字體、是否是粗體/斜體等)來給出。在實(shí)施例中,視覺指示附加地包括尚未展開級別或子樹的復(fù)雜度的圖形建議,例如指示隱藏元素?cái)?shù)量的數(shù)字或條(bar)。此外,在一個(gè)實(shí)施例中,對樹結(jié)構(gòu)的可視部分相對于樹視圖的位置進(jìn)行可視化的一個(gè)或多個(gè)位置指示符被示出為查看窗口的一部分。這提供了導(dǎo)航信息,例如,當(dāng)滾動(dòng)視圖或自動(dòng)重配置視圖導(dǎo)致在查看窗口中沒有樹視圖中的任何部分實(shí)際可見時(shí)。位置指示符可以是例如滾動(dòng)條、具有指示位置的較寬部分的小線、和/或指示相對于查看窗口的高度/寬度的位置的平線(plainline)。如果位置指示符提供了滾動(dòng)控制功能,它們不用于滾動(dòng)查看窗口,以避免在視圖上移動(dòng)指向光標(biāo)時(shí)對樹視圖的潛在不想要的重配置。在另一實(shí)施例中,在圖形用戶界面的單獨(dú)窗口或幀中示出位置指示符。雖然沒有明確描述,但是實(shí)施例可以被實(shí)施為任意組合或子組合。附圖說明圖1示意性地示出了用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的方法的實(shí)施例;圖2示意性地示出了用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的數(shù)據(jù)處理設(shè)備的實(shí)施例;圖3示意性地示出了用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的數(shù)據(jù)處理設(shè)備的另一實(shí)施例;以及圖4~32示意性地示出了在經(jīng)由指向光標(biāo)的用戶交互期間樹視圖經(jīng)歷樹視圖重配置機(jī)制的實(shí)施例。具體地,圖4示出了示例樹視圖;圖5示出了指向光標(biāo)在樹視圖的查看窗口之外的情形;圖6示出了指向光標(biāo)與樹元素未垂直對齊的情形;圖7示出了顯示僅具有頂級元素的活動(dòng)分支的情形;圖8示出了自動(dòng)展開活動(dòng)分支的下一個(gè)子級別的情形;圖9示出了自動(dòng)展開活動(dòng)分支的其他子級別的情形;圖10示出了經(jīng)由子級別樹元素來選擇活動(dòng)分支的情形;圖11示出了自動(dòng)展開子級別樹元素之下的下一個(gè)子級別的情形;圖12示出了自動(dòng)收起樹級別的第一部分;圖13示出了自動(dòng)收起樹級別的第二部分;圖14示出了自動(dòng)收起樹級別的第三部分;圖15示出了通過滾動(dòng)來自動(dòng)展開子級別的情形的第一部分;圖16示出了通過滾動(dòng)來自動(dòng)展開子級別的情形的第二部分;圖17示出了通過滾動(dòng)來自動(dòng)展開子級別的情形的第三部分;圖18示出了通過滾動(dòng)來自動(dòng)收起子級別的情形的第一部分;圖19示出了通過滾動(dòng)來自動(dòng)收起子級別的情形的第二部分;圖20示出了通過滾動(dòng)來自動(dòng)收起子級別的情形的第三部分;圖21示出了自動(dòng)展開最上面分支的情形的第一部分;圖22示出了自動(dòng)展開最上面分支的情形的第二部分;圖23示出了自動(dòng)展開最下面分支的情形的第一部分;圖24示出了自動(dòng)展開最下面分支的情形的第二部分;圖25示出了在活動(dòng)分支改變時(shí)自動(dòng)收起/展開的情形的第一部分;圖26示出了在活動(dòng)分支改變時(shí)自動(dòng)收起/展開的情形的第二部分;圖27示出了通過滾動(dòng)來自動(dòng)展開最上面分支的情形的第一部分;圖28示出了通過滾動(dòng)來自動(dòng)展開最上面分支的情形的第二部分;圖29示出了通過滾動(dòng)來自動(dòng)展開最下面分支的情形的第一部分;圖30示出了通過滾動(dòng)來自動(dòng)展開最下面分支的情形的第二部分;圖31示出了在通過滾動(dòng)而改變活動(dòng)分支時(shí)自動(dòng)收起/展開的情形的第一部分;以及圖32示出了在通過滾動(dòng)而改變活動(dòng)分支時(shí)自動(dòng)收起/展開的情形的第二部分。具體實(shí)施方式為了更好地理解,現(xiàn)將參考附圖在以下描述中更詳細(xì)地解釋所提出的方案。應(yīng)理解:該方案不限于這些示例實(shí)施例,且還可以方便地合并和/或修改具體特征,而不脫離如所附權(quán)利要求限定的本發(fā)明的范圍。參見圖1,示意性地示出了用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的計(jì)算機(jī)實(shí)現(xiàn)的方法10的實(shí)施例。根據(jù)所示實(shí)施例,該方法提供了不斷重配置樹視圖以用于樹的緊湊表示的自動(dòng)機(jī)制。在第一步驟11中,生成以多個(gè)分支來組織的樹結(jié)構(gòu)的樹視圖。根據(jù)所示實(shí)施例中,在下一步驟12中,響應(yīng)于用戶輸入的模式選擇來執(zhí)行在自動(dòng)模式和手動(dòng)模式之間的選擇。在手動(dòng)模式下,在下一步驟13中響應(yīng)于針對圖形用戶界面的進(jìn)一步手動(dòng)用戶輸入來更新樹視圖。在自動(dòng)模式下,執(zhí)行以下步驟:在下一步驟14中,確定指向光標(biāo)相對于樹視圖的位置。該位置包含根據(jù)第一方向的第一位置值和根據(jù)與第一方向正交的第二方向的第二位置值。在下一步驟15中,將根據(jù)第一方向與指向光標(biāo)的位置對齊的分支自動(dòng)選擇為活動(dòng)分支。在下一步驟16中,根據(jù)相對于活動(dòng)分支的子級別的縮進(jìn)的第二位置值來確定要展開的活動(dòng)分支的子級別。在下一步驟17中,通過展開所確定的活動(dòng)分支的子級別并收起其他分支來自動(dòng)更新樹視圖。在下一步驟18中,如果指向光標(biāo)相對于樹視圖的位置繼續(xù)改變,則繼續(xù)重復(fù)指向光標(biāo)位置確定步驟14、活動(dòng)分支選擇步驟15、子級別展開確定步驟16和自動(dòng)樹更新步驟17。否則,在所示實(shí)施例中,該方法等待指向光標(biāo)相對于樹視圖的任何更多位置改變?,F(xiàn)在參見圖2和圖3,示意性地示出了用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的數(shù)據(jù)處理設(shè)備的實(shí)施例。圖2中所示的設(shè)備和圖3中所示的設(shè)備允許實(shí)現(xiàn)所述的用于渲染樹結(jié)構(gòu)的方法的優(yōu)點(diǎn)和特性,作為用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的設(shè)備的一部分。圖2中所示的數(shù)據(jù)處理設(shè)備20包括選擇單元21,其被配置為響應(yīng)于由用戶輸入22的模式選擇在自動(dòng)模式和手動(dòng)模式之間選擇。圖形表示單元23被配置為生成以多個(gè)分支來組織的樹結(jié)構(gòu)的樹視圖。圖形表示單元23連接到或可連接到或包括用于顯示樹視圖的顯示裝置。在手動(dòng)模式下,圖形表示單元23響應(yīng)于針對圖形用戶界面的進(jìn)一步手動(dòng)用戶輸入來更新樹視圖。在自動(dòng)模式下,圖形表示單元23響應(yīng)于至少來自展開確定單元27的輸入來更新樹視圖。位置確定單元24連接到圖形表示單元23,并被配置為確定指向光標(biāo)相對于樹視圖的位置。該位置包含根據(jù)第一方向的第一位置值和根據(jù)與第一方向正交的第二方向的第二位置值。該位置是基于輸入25來確定的,輸入25來自用戶通過滾動(dòng)或移動(dòng)指向光標(biāo)來控制指向光標(biāo)的位置。活動(dòng)分支選擇單元26被配置為將根據(jù)第一方向與指向光標(biāo)位置對齊的分支自動(dòng)選擇為活動(dòng)分支,且展開確定單元27被配置為根據(jù)相對于活動(dòng)分支的子級別的縮進(jìn)的第二位置值來確定要展開的活動(dòng)分支的子級別。圖形表示單元23被配置為通過展開所確定的活動(dòng)分支的子級別并收起其他分支來自動(dòng)更新樹視圖。在圖2所示實(shí)施例中,選擇單元21、圖形表示單元23、位置確定單元24、活動(dòng)分支選擇單元26和展開確定單元27彼此直接通信。在另一實(shí)施例中,該設(shè)備包括連接到一個(gè)或多個(gè)單元并控制其通信的控制器單元。選擇單元21、圖形表示單元23、位置確定單元24、活動(dòng)分支選擇單元26和展開確定單元27可以作為單獨(dú)裝置來提供,作為至少一個(gè)裝置或邏輯電路來聯(lián)合提供,或者在功能上由連接到至少一個(gè)存儲器裝置或包括至少一個(gè)存儲器裝置在內(nèi)的微處理器、微控制器或其他處理裝置、計(jì)算機(jī)或被布置為執(zhí)行該處理的其他可編程設(shè)備來實(shí)現(xiàn)。如圖3所示,用于根據(jù)指向光標(biāo)相對于所渲染的樹結(jié)構(gòu)的位置在圖形用戶界面中渲染元素的樹結(jié)構(gòu)的數(shù)據(jù)處理設(shè)備30的實(shí)施例包括處理裝置31、顯示裝置32和存儲指令的存儲器裝置33,該指令在被執(zhí)行時(shí)使得處理裝置:-生成樹視圖,該樹視圖使用顯示裝置32示出了以多個(gè)分支來組織的樹結(jié)構(gòu);-確定指向光標(biāo)相對于樹視圖的位置,該位置包含根據(jù)第一方向的第一位置值和根據(jù)與第一方向正交的第二方向的第二位置值;-將根據(jù)第一方向與指向光標(biāo)的位置對齊的分支自動(dòng)選擇為活動(dòng)分支;-根據(jù)相對于活動(dòng)分支的子級別的縮進(jìn)的第二位置值來確定要展開的活動(dòng)分支的子級別;以及-通過展開所確定的活動(dòng)分支的子級別并收起其他分支來自動(dòng)更新由顯示裝置示出的樹視圖。例如,處理裝置可以是適用于執(zhí)行根據(jù)所述方法之一的步驟的處理器。在實(shí)施例中,所述適用于包括:處理器被配置為(例如,被編程為)執(zhí)行根據(jù)所述方法之一的步驟?,F(xiàn)在參見圖4至32,作為示例,示意性地示出了在自動(dòng)模式下經(jīng)由指向光標(biāo)的用戶交互期間分類系統(tǒng)樹視圖經(jīng)歷自動(dòng)樹視圖重配置機(jī)制的實(shí)施例。圖4示出了在查看窗口中的分類系統(tǒng)樹的樹視圖的示例,當(dāng)前展開了四個(gè)子級別。指向光標(biāo)的位置由箭頭來指示。顯示為樹視圖中的樹的分類系統(tǒng)具有9個(gè)頂級概念(概念1、...、概念9),且每個(gè)超概念或父節(jié)點(diǎn)/元素具有9個(gè)子概念或子節(jié)點(diǎn)/元素,且具有總共五個(gè)分級級別。在圖4至32中所示的示例中,操控該分類系統(tǒng)。在圖4中,僅展開了與指向光標(biāo)垂直對齊的分支,而收起其他分支,提供了樹的緊湊呈現(xiàn),然而高至級別5的樹元素都可見。根據(jù)所提出的方案,指向光標(biāo)相對于樹視圖的位置用于控制樹視圖的自動(dòng)展開/收起操作。指向光標(biāo)相對于樹元素的垂直位置控制了可以將樹的哪個(gè)分支作為活動(dòng)分支來展開。自動(dòng)收起樹的其他分支。這些分支被稱為不活動(dòng)分支。指向光標(biāo)的相對于樹級別的縮進(jìn)的水平位置控制了可以展開活動(dòng)分支的多少個(gè)子級別。在自動(dòng)展開/收起樹元素時(shí),還可以自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得實(shí)際的指向光標(biāo)位置反映相對于經(jīng)更新的樹視圖的新的邏輯指向光標(biāo)位置。圖5示出了當(dāng)指向光標(biāo)未指向查看窗口時(shí)的樹視圖。該情形僅在指向光標(biāo)是系統(tǒng)的指向光標(biāo)的情況下是可能的,即創(chuàng)建的不是專門用于與樹視圖交互的標(biāo)準(zhǔn)指向光標(biāo)。在該情況下,不管指向光標(biāo)的垂直位置如何,按照定義不存在活動(dòng)分支。因此,僅顯示樹的頂級元素。此外,在所示實(shí)施例中,樹始終以在查看窗口的左上角顯示其包括相關(guān)聯(lián)的子元素指示符(如果適用于頂級樹元素)在內(nèi)的最上面元素的方式來顯示。當(dāng)將指向光標(biāo)移動(dòng)到查看窗口中時(shí),向用戶提供樹的緊湊和一致的呈現(xiàn),作為在樹中導(dǎo)航的起點(diǎn)。根據(jù)指向光標(biāo)進(jìn)入查看窗口之處相對于樹視圖的位置以及移動(dòng)的方向,這種移動(dòng)可能已經(jīng)引起了對樹視圖的自動(dòng)重配置。圖6示出了當(dāng)指向光標(biāo)指向查看窗口但與任何樹元素未垂直對齊時(shí)的情形。不選擇任何分支作為活動(dòng)分支,也導(dǎo)致僅顯示樹的頂級元素。因此,當(dāng)系統(tǒng)的指向光標(biāo)在進(jìn)入位置不與任何樹元素垂直對齊的情況下被移動(dòng)到查看窗口中時(shí),樹視圖不改變。然而,由于在指向光標(biāo)不指向查看窗口時(shí)在查看窗口的上邊緣處顯示最上面的樹元素,除非完全沒有顯示任何樹,否則將指向光標(biāo)從上面移動(dòng)到查看窗口中引起進(jìn)入位置與最上面的樹元素垂直對齊。當(dāng)指向光標(biāo)指向查看窗口且與樹元素垂直對齊時(shí),該元素所屬的分支是活動(dòng)分支??梢哉归_活動(dòng)分支的多少個(gè)子級別取決于指向光標(biāo)的水平位置。如果該位置對應(yīng)于最高樹級別,稱為樹級別1,即如果指向光標(biāo)位于樹級別2的縮進(jìn)的左側(cè),則僅顯示活動(dòng)分支的頂級元素連同不活動(dòng)分支的頂級元素一起,參見圖7。從圖7所示的位置出發(fā),指向光標(biāo)可以在查看窗口內(nèi)向上和向下移動(dòng)而不改變樹視圖。是否存在活動(dòng)分支以及哪個(gè)頂級樹元素與活動(dòng)分支相關(guān)聯(lián)隨著指向光標(biāo)相對于樹視圖的垂直位移而改變。當(dāng)存在活動(dòng)分支且指向光標(biāo)向右移動(dòng)超過下一個(gè)樹級別的縮進(jìn)時(shí),則自動(dòng)展開活動(dòng)分支的下一個(gè)子級別(如果存在的話)。如果指向光標(biāo)與被展開的樹級別的直接超元素垂直對齊,該下一個(gè)子級別自然是該直接超元素的子級別。否則,該下一個(gè)子級別被定義為該活動(dòng)分支的當(dāng)前展開的最低樹級別的最上面的樹元素的子級別。例如,如果將指向光標(biāo)向右移動(dòng)等價(jià)于圖7所示的樹視圖中的樹縮進(jìn)的一個(gè)級別的距離,則作為結(jié)果的樹視圖對應(yīng)于圖8,因?yàn)樽鳛榻Y(jié)果的水平指向光標(biāo)位置對應(yīng)于樹級別2,即指向光標(biāo)位于樹級別2和3的縮進(jìn)之間。因此,一旦指向光標(biāo)在其路上跨過樹級別2的縮進(jìn),則自動(dòng)展開活動(dòng)分支的樹級別2。通過將指向光標(biāo)進(jìn)一步向右移動(dòng)4個(gè)樹縮進(jìn)級別的距離,一旦跨過對應(yīng)的縮進(jìn)則展開活動(dòng)分支的越來越多的子級別,導(dǎo)致圖9中所示的經(jīng)重配置的樹視圖,且作為結(jié)果的水平指向光標(biāo)位置有意地對應(yīng)于樹級別6,以示出將指向光標(biāo)移動(dòng)到活動(dòng)分支的最低樹級別的縮進(jìn)右側(cè)的進(jìn)一步縮進(jìn)不會(huì)引起對樹視圖的任何更多的改變。根據(jù)水平指向光標(biāo)位置對活動(dòng)分支的子級別的自動(dòng)展開還發(fā)生在系統(tǒng)的指向光標(biāo)從左側(cè)、右側(cè)、或上方移動(dòng)到查看窗口中且進(jìn)入位置與樹元素垂直對齊(該樹元素始終是頂級樹元素之一)時(shí),因?yàn)閮H這些樹元素在指向光標(biāo)不指向查看窗口時(shí)才被顯示。包括與指向光標(biāo)垂直對齊的頂級樹元素在內(nèi)的分支變?yōu)榛顒?dòng)分支,且根據(jù)指向光標(biāo)相對于樹視圖的水平位置被自動(dòng)展開,這受到活動(dòng)分支的子級別的數(shù)目的約束。通常,用戶將不一次展開活動(dòng)分支的多于一個(gè)子級別,而是將首先瀏覽最近展開的子級別的樹元素以查看是否存在感興趣的元素以及是否想要展開該元素下的子級別。例如,如果用戶決定展開圖8所示的樹視圖中的concept_3_3下的子級別,他將有可能將指向光標(biāo)向下移動(dòng)至concept_3_3,以使包括concept_3_3在內(nèi)的分支成為活動(dòng)分支,參見圖10,然后將指向光標(biāo)向右移動(dòng)以展開下一個(gè)子級別,參見圖11。如果用戶繼續(xù)展開圖11所示樹視圖中的每個(gè)樹級別的每個(gè)第三元素,則樹視圖將最終對應(yīng)于圖4(除了被較小的查看窗口的下邊緣所截?cái)嘀?。當(dāng)存在活動(dòng)分支且指向光標(biāo)向左移動(dòng)跨過除了樹級別1之外的當(dāng)前展開的最低樹級別的縮進(jìn)時(shí),該樹級別被自動(dòng)收起。如果指向光標(biāo)與被收起的樹級別的直接或間接超元素垂直對齊,則活動(dòng)分支不改變。例如,如果將指向光標(biāo)向左移動(dòng)等價(jià)于圖9所示的樹視圖中的樹縮進(jìn)的4個(gè)級別的距離,則作為結(jié)果的樹視圖對應(yīng)于圖8,因?yàn)樽鳛榻Y(jié)果的水平指向光標(biāo)位置對應(yīng)于樹級別2。因此,一旦指向光標(biāo)在其路上跨過樹級別5的縮進(jìn)時(shí),自動(dòng)收起活動(dòng)分支的樹級別5,且之后一旦跨過相應(yīng)縮進(jìn),則自動(dòng)收起活動(dòng)分支的樹級別4和3。通過將指向光標(biāo)進(jìn)一步向左移動(dòng)一個(gè)樹縮進(jìn)級別,還收起了活動(dòng)分支的樹級別2,得到圖7所示的樹視圖。類似地,一旦指向光標(biāo)跨過樹級別3的縮進(jìn),則在圖11所示的樹視圖中將指向光標(biāo)向左移動(dòng)得到圖10所示的樹視圖。當(dāng)由于將指向光標(biāo)向左移動(dòng)而導(dǎo)致指向光標(biāo)與被收起的樹級別的直接或間接超元素未垂直對齊時(shí),簡單地收起該樹級別將引起任意的樹元素(如果有的話)與指向光標(biāo)垂直對齊,這取決于由該樹級別的元素之前占據(jù)的空間和指向光標(biāo)相對于這些元素的垂直位置。因此,在沒有用戶的控制的情況下,將存在包括該任意樹元素在內(nèi)的新的活動(dòng)分支或者將沒有活動(dòng)分支。因此,在所示實(shí)施例中,自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得在該情況下已被收起的樹級別的直接超元素與指向光標(biāo)垂直對齊,且該超元素相對于指向光標(biāo)的垂直位移與在樹視圖更新之前曾與指向光標(biāo)垂直對齊的樹元素相同,因?yàn)樵撐恢檬墙?jīng)更新的樹視圖內(nèi)的新的邏輯指向光標(biāo)位置。這也使得包括該超元素在內(nèi)的分支成為活動(dòng)分支,實(shí)現(xiàn)了在樹中的進(jìn)一步無縫導(dǎo)航。另一個(gè)方案將是代之以將指向光標(biāo)移動(dòng)到該超元素的位置,這被假定為讓用戶困惑。此外,該超元素當(dāng)前可能是不可見的,無論如何都要求移動(dòng)經(jīng)更新的樹視圖。對經(jīng)更新的樹視圖的自動(dòng)垂直移動(dòng)可能引起樹的最上方的元素以與查看窗口的上邊緣間隔某個(gè)距離的方式來顯示。一旦用戶展開感興趣的接下來的子級別并在其中滾動(dòng),快速地化解這種位移。為了方便,在另一實(shí)施例中,該機(jī)制包括將樹視圖的最上方元素再次移動(dòng)到查看窗口的上邊緣的校正功能,包括移動(dòng)指向光標(biāo),使得其停留在相對于樹視圖的相同位置處。該校正功能可以在用戶請求時(shí)被觸發(fā),例如,通過鍵盤或鼠標(biāo)控制、或者多點(diǎn)觸控手勢、或者在配置為用戶首選的情況下一旦這種位移將發(fā)生時(shí)自動(dòng)觸發(fā)。在圖12至圖14中示出了由將指向光標(biāo)向左移動(dòng)所引起的對樹級別的自動(dòng)收起以及作為結(jié)果的對經(jīng)更新的樹視圖的垂直移動(dòng)的示例。圖12示出了在指向光標(biāo)移動(dòng)之前的視圖?,F(xiàn)在,將指向光標(biāo)向左移動(dòng)等價(jià)于一個(gè)樹縮進(jìn)級別的距離,得到圖13所示的樹視圖,因?yàn)橐坏┲赶蚬鈽?biāo)在其路上跨過樹級別3的縮進(jìn),則自動(dòng)收起樹級別3且自動(dòng)向下移動(dòng)經(jīng)更新的樹視圖,使得在樹視圖更新之前曾顯示concept_3_3的垂直位置處顯示concept_3_3的直接超元素。指向光標(biāo)進(jìn)一步向左移動(dòng)一個(gè)樹縮進(jìn)級別得到圖14所示的樹視圖,且在與圖13中的concept_3_3相同垂直位置處顯示圖14中的concept_3。如果樹視圖的相對于未改變的指向光標(biāo)位置的水平位移導(dǎo)致與之前不同的樹級別相對應(yīng)的水平指向光標(biāo)位置,則對樹級別的自動(dòng)展開或收起還可以由查看窗口的水平滾動(dòng)來觸發(fā),且自動(dòng)展開受到活動(dòng)分支的子級別的數(shù)目的約束。原則上,將查看窗口向右滾動(dòng)受到樹視圖中向右到達(dá)最遠(yuǎn)的與查看窗口的右邊緣右對齊的元素的約束,而不管該元素在查看窗口內(nèi)是否實(shí)際可見。然而,由于活動(dòng)分支的當(dāng)前展開的最低樹級別的縮進(jìn)右側(cè)的下一個(gè)樹級別的縮進(jìn)應(yīng)當(dāng)可由指向光標(biāo)來訪問(通過水平滾動(dòng)和水平指向光標(biāo)移動(dòng)的任何組合),以實(shí)現(xiàn)對活動(dòng)分支的下一個(gè)子級別(如果存在的話)的展開,查看窗口允許被向右滾動(dòng),使得該縮進(jìn)可由指向光標(biāo)清楚地訪問。這導(dǎo)致了樹視圖中被示出的向右到達(dá)最遠(yuǎn)的元素與查看窗口的右邊緣間隔某個(gè)距離(如果該元素實(shí)際上可見且并未長到足以清楚地延伸至該縮進(jìn))。另一方面,在樹的頂級元素左側(cè)不存在要訪問的樹級別的縮進(jìn),因此向左滾動(dòng)查看窗口可以受到在查看窗口的左邊緣處示出的這些頂級元素(包括相關(guān)聯(lián)的子元素指示符(如果對它們適用的話))的約束。由圖15至圖17示出了由向右滾動(dòng)查看窗口所引起的對活動(dòng)分支的子級別的自動(dòng)展開的示例。圖15示出了在滾動(dòng)之前的視圖。由于指向光標(biāo)幾乎已到達(dá)了查看窗口的右邊緣,通過向右移動(dòng)指向光標(biāo)不能展開活動(dòng)分支的進(jìn)一步子級別,但是必須代之以通過向右滾動(dòng)查看窗口來展開活動(dòng)分支的進(jìn)一步子級別。此外,活動(dòng)分支的樹級別3的元素被查看窗口的右邊緣所截?cái)?,因此用戶還可能想要向右滾動(dòng)視圖以能夠讀取這些元素的更多文本?,F(xiàn)在將查看窗口向右滾動(dòng)等價(jià)于一個(gè)樹縮進(jìn)級別的距離,得到與樹級別4水平相對應(yīng)的未改變的指向光標(biāo)位置,因此自動(dòng)展開活動(dòng)分支的樹級別4,參見圖16。假如展開活動(dòng)分支的下一個(gè)子級別或者能夠讀取活動(dòng)分支的樹級別3的依然被截?cái)嗟脑兀F(xiàn)在將查看窗口再次向右滾動(dòng)一個(gè)樹縮進(jìn)級別,得到與樹級別5水平相對應(yīng)的未改變的指向光標(biāo)位置,且因此自動(dòng)展開活動(dòng)分支的樹級別5,參見圖17。用戶現(xiàn)在可以通過將查看窗口進(jìn)一步向右滾動(dòng)來嘗試展開活動(dòng)分支的進(jìn)一步子級別,但是由于不存在這種子級別,這將僅導(dǎo)致未改變的樹視圖在查看窗口內(nèi)向左移動(dòng),直到活動(dòng)分支的樹級別5中不再有元素被查看窗口的右邊緣所截?cái)?假如所有這些元素長到足夠清楚地延伸至樹級別6的縮進(jìn)),使得這些元素相對于查看窗口的右邊緣的進(jìn)一步位移是不必要的。如果代之以執(zhí)行了滾動(dòng)以能夠讀取活動(dòng)分支的樹級別3的元素的文本,則用戶將可能將指向光標(biāo)向左移動(dòng),直到其水平位置對應(yīng)于樹級別3,以再次自動(dòng)收起活動(dòng)分支的樹級別4和5。當(dāng)由于向左滾動(dòng)查看窗口而導(dǎo)致指向光標(biāo)與被收起的樹級別的直接或間接超元素垂直對齊時(shí),則活動(dòng)分支不改變。例如,如果將圖17所示的查看窗口向左滾動(dòng)等價(jià)于一個(gè)樹縮進(jìn)級別的距離,作為結(jié)果的樹視圖對應(yīng)于圖16,因?yàn)槲锤淖兊闹赶蚬鈽?biāo)位置水平對應(yīng)于樹級別4,因此簡單地自動(dòng)收起活動(dòng)分支的樹級別5。通過向左移動(dòng)一個(gè)樹縮進(jìn)級別的另一個(gè)滾動(dòng)操作,還自動(dòng)收起了活動(dòng)分支的樹級別4,得到圖15所示的樹視圖。當(dāng)由于將查看窗口向左滾動(dòng)而導(dǎo)致指向光標(biāo)與被收起的樹級別的直接或間接超元素未垂直對齊時(shí),還垂直移動(dòng)經(jīng)更新的樹視圖,使得已被收起的樹級別的直接超元素與未改變的指向光標(biāo)位置垂直對齊,類似于在類似情況下和出于相同原因而將指向光標(biāo)向左移動(dòng)時(shí)的行為。這可能再次導(dǎo)致樹視圖的最上方元素相對于查看窗口的上邊緣的位移,這可以如上所述來化解。在圖18至圖20中示出了由將查看窗口向左滾動(dòng)所引起的對樹級別的自動(dòng)收起以及作為結(jié)果的對經(jīng)更新的樹視圖的垂直移動(dòng)的示例。圖18示出了在滾動(dòng)之前的視圖。然后將查看窗口向左滾動(dòng)等價(jià)于一個(gè)樹縮進(jìn)級別的距離,得到與樹級別4水平對應(yīng)的未改變的指向光標(biāo)位置,因此自動(dòng)收起樹級別5且自動(dòng)向下移動(dòng)經(jīng)更新的樹視圖,使得在樹視圖更新之前曾顯示concept_2_2_2_2_2的垂直位置處顯示concept_2_2_2_2(concept_2_2_2_2_2的直接超元素),參見圖19。向左滾動(dòng)一個(gè)樹縮進(jìn)級別的另一個(gè)滾動(dòng)操作得到圖20所示的樹視圖,且在與圖19中的concept_2_2_2_2相同垂直位置處顯示圖20中的concept_2_2_2。對樹級別的自動(dòng)展開或收起還可以由指向光標(biāo)在查看窗口內(nèi)的垂直移動(dòng)來觸發(fā)或者由查看窗口的垂直滾動(dòng)來觸發(fā)(如果作為結(jié)果的指向光標(biāo)相對于樹視圖的垂直位移使得不活動(dòng)分支變?yōu)榛顒?dòng)分支或反之)。這包括對當(dāng)前活動(dòng)分支(如果有的話)的自動(dòng)收起,以及對新的活動(dòng)分支(如果有的話)的自動(dòng)展開,后者取決于指向光標(biāo)相對于樹視圖的水平位置,且自動(dòng)展開受到新的活動(dòng)分支的子級別的數(shù)目的約束。由于在這些操作之前和之后顯示的樹視圖可能多少具有共同的樹元素,作為結(jié)果的對樹視圖的更新可能實(shí)際上多少是可見的,甚至完全沒有改變可見。此外,所提出的機(jī)制可以自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得實(shí)際的指向光標(biāo)位置反映相對于經(jīng)更新的樹視圖的新的邏輯指向光標(biāo)位置。這可能再次導(dǎo)致樹視圖的最上方元素相對于查看窗口的上邊緣的位移,這可以如上所述來化解。對標(biāo)準(zhǔn)樹視圖的垂直滾動(dòng)通常受到樹視圖的在查看窗口的上邊緣處示出的最上方元素的約束以及受到樹視圖的在查看窗口的下邊緣處示出的最下方元素的約束。然而,該方案并不適合使用所提出機(jī)制的樹視圖。首先,在指向光標(biāo)相對于樹視圖位移時(shí)對樹視圖的自動(dòng)重配置無論如何將經(jīng)常引起樹視圖的最上方或最下方元素分別相對于查看窗口的上邊緣或下邊緣的垂直位移,因此僅在查看窗口的垂直滾動(dòng)時(shí)避免該行為沒什么用處。其次,對查看窗口的垂直滾動(dòng)本身將經(jīng)常引起對視圖的重配置,因此根據(jù)在滾動(dòng)之前顯示的樹視圖來約束這種滾動(dòng)可以導(dǎo)致交替滾動(dòng)操作且要求指向光標(biāo)移動(dòng)以到達(dá)感興趣的樹元素,因?yàn)榭梢员苊膺M(jìn)一步的滾動(dòng),直到進(jìn)一步的指向光標(biāo)移動(dòng)再次對其進(jìn)行解鎖。此外,如果使用所提出的機(jī)制的應(yīng)用代之以檢查是否可以顯示符合這種標(biāo)準(zhǔn)滾動(dòng)約束的經(jīng)更新的樹視圖,且如果預(yù)期的滾動(dòng)距離違反了這些約束,則將不得不減少該滾動(dòng)距離且將不得不再次執(zhí)行該檢查(有可能是多次)。因此,在所示實(shí)施例中,為了分別向上或向下滾動(dòng)查看窗口,根據(jù)所提議的方案的垂直滾動(dòng)受到樹視圖中與查看窗口內(nèi)的指向光標(biāo)垂直對齊的最上方或最下方元素的約束。這使得用戶能夠在未改變的指向光標(biāo)位置之下向上或向下滾動(dòng)整個(gè)樹視圖。此外,用戶可以通過在查看窗口內(nèi)選擇對應(yīng)的垂直指向光標(biāo)位置來容易地選擇在指向光標(biāo)之上或之下可以顯示多少樹視圖部分。由指向光標(biāo)在查看窗口內(nèi)的垂直移動(dòng)或者由查看窗口的垂直滾動(dòng)所引起的指向光標(biāo)相對于樹視圖的垂直位移所導(dǎo)致的相對于樹視圖的新的邏輯指向光標(biāo)位置(被稱為新的邏輯指向光標(biāo)位置)是借助被稱為經(jīng)裁剪(tailored)的樹視圖的概念樹視圖來定義的。經(jīng)裁剪的樹視圖被定義為:不管垂直指向光標(biāo)位置如何,所有元素和分支展開到與指向光標(biāo)的水平位置相對應(yīng)的樹級別的實(shí)際樹視圖,且水平指向光標(biāo)位置相對于實(shí)際樹視圖和經(jīng)裁剪的樹視圖是相同的。相對于實(shí)際樹視圖和經(jīng)裁剪的樹視圖的垂直指向光標(biāo)位置如下定義:當(dāng)指向光標(biāo)位于實(shí)際樹視圖的最上方元素之上時(shí),其在概念上也位于經(jīng)裁剪的樹視圖的最上方元素之上,且距離這些元素有相同的垂直距離。當(dāng)指向光標(biāo)與實(shí)際樹視圖的元素垂直對齊時(shí),其在概念上也與經(jīng)裁剪的樹視圖的相同元素垂直對齊,且相對于這些元素有相同的垂直位移。當(dāng)指向光標(biāo)位于實(shí)際樹視圖的最下方元素之下時(shí),其在概念上也位于經(jīng)裁剪的樹視圖的最下方元素之下,且距離這些元素有相同的垂直距離。新的邏輯指向光標(biāo)位置被定義為:如果指向光標(biāo)相對于實(shí)際樹視圖的垂直位移代之以應(yīng)用于經(jīng)裁剪的樹視圖,指向光標(biāo)將具有的相對于經(jīng)裁剪的樹視圖的位置,且具有相同方向和距離。當(dāng)指向光標(biāo)位于查看窗口之內(nèi)并在樹視圖的最上方元素之上時(shí),不存在活動(dòng)分支,導(dǎo)致僅顯示樹的頂級元素,參見圖21。從圖21所示的位置開始,只要指向光標(biāo)停留在樹視圖的最上方元素之上,指向光標(biāo)就可以在查看窗口內(nèi)向上和向下移動(dòng),而不改變樹視圖。當(dāng)向下移動(dòng)指向光標(biāo)跨過空白區(qū)域和樹視圖的最上方元素之間的垂直邊界時(shí),其也將跨過空白區(qū)域和經(jīng)裁剪的樹視圖的最上方元素之間的垂直邊界。因此,新的邏輯指向光標(biāo)位置與經(jīng)裁剪的樹視圖的最上方元素垂直對齊,且包括該最上方元素在內(nèi)的分支變?yōu)樾碌幕顒?dòng)分支且被自動(dòng)展開。由于樹視圖的最上方元素與經(jīng)裁剪的樹視圖的最上方元素始終是同一樹元素,新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置匹配,且不需要對經(jīng)更新的樹視圖的垂直移動(dòng)。例如,如果在圖21所示的查看窗口中指向光標(biāo)向下移動(dòng)到圖22所示的位置處,作為結(jié)果的樹視圖對應(yīng)于圖22,因?yàn)橐坏┲赶蚬鈽?biāo)在其路上跨過空白區(qū)域和concept_1之間的垂直邊界,則新的邏輯指向光標(biāo)位置與concept_1垂直對齊且包括concept_1在內(nèi)的分支變?yōu)榛顒?dòng)分支且由于水平指向光標(biāo)位置而被展開至樹級別2。當(dāng)在查看窗口內(nèi)指向光標(biāo)向上移動(dòng)跨過樹視圖的最上方元素和上面空白區(qū)域之間的垂直邊界時(shí),其也將跨過經(jīng)裁剪的樹視圖的最上方元素和上面空白區(qū)域之間的垂直邊界。因此,新的邏輯指向光標(biāo)位置就在樹視圖的最上方元素之上,且包括該最上方元素在內(nèi)的分支不再是活動(dòng)分支且被自動(dòng)收起。由于樹視圖的最上方元素和經(jīng)裁剪的樹視圖的最上方元素一致,則新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置匹配,且不需要對經(jīng)更新的樹視圖的垂直移動(dòng)。例如,如果在圖22所示的查看窗口中指向光標(biāo)向上移動(dòng)到圖21所示的位置處,作為結(jié)果的樹視圖對應(yīng)于圖21,因?yàn)橐坏┲赶蚬鈽?biāo)在其路上跨過concept_1和上面空白區(qū)域之間的垂直邊界,則新的邏輯指向光標(biāo)位置不再與任何樹元素垂直對齊且包括concept_1在內(nèi)的分支不再是活動(dòng)分支且被自動(dòng)收起。當(dāng)指向光標(biāo)位于查看窗口之內(nèi)并在樹視圖的最下方元素之下時(shí),不存在活動(dòng)分支,導(dǎo)致僅顯示樹的頂級元素,參見圖23。從圖23所示的位置開始,只要指向光標(biāo)停留在樹視圖的最下方元素之下,指向光標(biāo)就可以在查看窗口內(nèi)向上和向下移動(dòng),而不改變樹視圖。當(dāng)向上移動(dòng)指向光標(biāo)跨過空白區(qū)域和樹視圖的最下方元素之間的垂直邊界時(shí),其也將跨過空白區(qū)域和經(jīng)裁剪的樹視圖的最下方元素之間的垂直邊界。因此,新的邏輯指向光標(biāo)位置與經(jīng)裁剪的樹視圖的最下方元素垂直對齊,且包括該最下方元素在內(nèi)的分支變?yōu)榛顒?dòng)分支且被自動(dòng)展開。由于樹視圖的最下方元素可能與經(jīng)裁剪的樹視圖的最下方元素不是相同的樹元素,這可能導(dǎo)致新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置不匹配。如果是這種情況,經(jīng)更新的樹視圖樹視圖也自動(dòng)垂直移動(dòng),使得新的邏輯指向光標(biāo)位置和實(shí)際的指向光標(biāo)位置相同,導(dǎo)致在樹視圖更新之前曾顯示樹視圖的最下方元素的垂直位置處顯示經(jīng)更新的樹視圖的最下方元素。例如,如果在圖23所示的查看窗口中指向光標(biāo)向上移動(dòng)到圖24所示的位置處,作為結(jié)果的樹視圖對應(yīng)于圖24,因?yàn)橐坏┲赶蚬鈽?biāo)在其路上跨過空白區(qū)域和concept_9之間的垂直邊界,則新的邏輯指向光標(biāo)位置與concept_9_9垂直對齊,且包括concept_9_9在內(nèi)的分支變?yōu)榛顒?dòng)分支且由于水平指向光標(biāo)位置而被展開至樹級別2,且向上移動(dòng)經(jīng)更新的樹視圖,使得在樹視圖更新之前曾顯示concept_9的垂直位置處顯示concept_9_9。當(dāng)在查看窗口中指向光標(biāo)向下移動(dòng)跨過樹視圖的最下方元素和下面空白區(qū)域之間的垂直邊界時(shí),其也將跨過經(jīng)裁剪的樹視圖的最下方元素和下面空白區(qū)域之間的垂直邊界。因此,新的邏輯指向光標(biāo)位置就在樹視圖的最下方元素之下,且包括該最下方元素在內(nèi)的分支不再是活動(dòng)分支且被自動(dòng)收起。由于樹視圖的最下方元素可能與經(jīng)更新的樹視圖的最下方元素不是相同的樹元素,這可能導(dǎo)致新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置不匹配。如果是這種情況,經(jīng)更新的樹視圖樹視圖也自動(dòng)垂直移動(dòng),使得新的邏輯指向光標(biāo)位置和實(shí)際的指向光標(biāo)位置相同,導(dǎo)致在樹視圖更新之前曾顯示樹視圖的最下方元素的垂直位置處顯示經(jīng)更新的樹視圖的最下方元素。例如,如果在圖24所示的查看窗口中指向光標(biāo)向下移動(dòng)到圖23所示的位置處,作為結(jié)果的樹視圖對應(yīng)于圖23,因?yàn)橐坏┲赶蚬鈽?biāo)在其路上跨過concept_9_9和下面空白區(qū)域之間的垂直邊界,則新的邏輯指向光標(biāo)位置不與任何樹元素垂直對齊,包括concept_9_9在內(nèi)的分支不再是活動(dòng)分支且被自動(dòng)收起,以及向下移動(dòng)經(jīng)更新的樹視圖,使得在樹視圖更新之前曾顯示concept_9_9的垂直位置處顯示concept_9。跨過樹視圖的兩個(gè)垂直相鄰元素之間的垂直邊界的指向光標(biāo)移動(dòng)導(dǎo)致了對活動(dòng)分支的改變,且自動(dòng)收起當(dāng)前活動(dòng)分支并自動(dòng)展開新的活動(dòng)分支。根據(jù)移動(dòng)的方向,新的邏輯指向光標(biāo)位置與經(jīng)裁剪的樹視圖中的與指向光標(biāo)之前曾垂直對齊的樹元素直接上方或下方的元素垂直對齊。如果對樹視圖的更新導(dǎo)致新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置不匹配,則還自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得新的邏輯指向光標(biāo)位置和實(shí)際指向光標(biāo)位置相同,導(dǎo)致經(jīng)更新的樹視圖的元素與在樹視圖更新之前曾顯示的樹視圖的指向光標(biāo)所移動(dòng)到的元素的垂直位置處顯示的指向光標(biāo)垂直對齊。例如,如果在圖25所示的查看窗口中指向光標(biāo)向下移動(dòng)到圖26所示的位置處,作為結(jié)果的樹視圖對應(yīng)于圖26,因?yàn)橐坏┲赶蚬鈽?biāo)在其路上跨過concept_1_9和concept_2之間的垂直邊界,則新的邏輯指向光標(biāo)位置與concept_2垂直對齊,包括concept_1_9在內(nèi)的分支不再是活動(dòng)分支且被自動(dòng)收起,包括concept_2在內(nèi)的分支變?yōu)樾碌幕顒?dòng)分支且由于水平指向光標(biāo)位置而被展開至樹級別2,且向下移動(dòng)經(jīng)更新的樹視圖,使得在樹視圖更新之前曾顯示concept_2的相同垂直位置處顯示concept_2。如果在圖26所示的查看窗口中指向光標(biāo)向上移動(dòng)到圖25所示的位置處,作為結(jié)果的樹視圖對應(yīng)于圖25,因?yàn)橐坏┲赶蚬鈽?biāo)在其路上跨過concept_2和concept_1之間的垂直邊界,則新的邏輯指向光標(biāo)位置與concept_1_9垂直對齊,包括concept_2在內(nèi)的分支不再是活動(dòng)分支且被自動(dòng)收起,包括concept_1_9在內(nèi)的分支變?yōu)樾碌幕顒?dòng)分支且由于水平指向光標(biāo)位置而被展開至樹級別2,且向上移動(dòng)經(jīng)更新的樹視圖,使得在樹視圖更新之前曾顯示concept_1的垂直位置處顯示concept_1_9。為了一致性,就好像指向光標(biāo)從下方(從空白區(qū)域或從當(dāng)前活動(dòng)分支)移動(dòng)到新的活動(dòng)分支一樣,對活動(dòng)分支的子級別的自動(dòng)展開還發(fā)生在系統(tǒng)的指向光標(biāo)從下方移動(dòng)到查看窗口中且進(jìn)入位置與樹元素垂直對齊(該樹元素始終是頂級樹元素之一)時(shí),因?yàn)閮H這些樹元素在指向光標(biāo)不指向查看窗口時(shí)才被顯示。根據(jù)指向光標(biāo)相對于樹視圖的水平位置,包括與新的邏輯指向光標(biāo)位置垂直對齊的樹元素在內(nèi)的分支變?yōu)榛顒?dòng)分支且被自動(dòng)展開,這受到活動(dòng)分支的子級別的數(shù)目的約束,且自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置相匹配。以類似于指向光標(biāo)在查看窗口內(nèi)的垂直移動(dòng)的方式來處理對查看窗口的垂直滾動(dòng),只是有兩個(gè)值得注意的不同:首先,與垂直指向光標(biāo)移動(dòng)始終連續(xù)相反,垂直滾動(dòng)可能不是連續(xù)的,有可能導(dǎo)致新的邏輯指向光標(biāo)位置與經(jīng)裁剪的樹視圖的任意元素(而不是最上方、最下方或垂直相鄰的元素)垂直對齊。其次,與在查看窗口內(nèi)在樹視圖之上或之下移動(dòng)指向光標(biāo)不受約束相反,對查看窗口的垂直滾動(dòng)可能受到如上所述的約束。在所示實(shí)施例中,應(yīng)用了垂直滾動(dòng)約束。此外,以下示例僅示出了進(jìn)行等價(jià)于樹元素的高度的倍數(shù)的距離的垂直滾動(dòng)。假如在樹視圖重配置之前和之后指向光標(biāo)與樹元素垂直對齊,其他滾動(dòng)距離將附加地導(dǎo)致指向光標(biāo)相對于在重配置的樹視圖中與指向光標(biāo)垂直對齊的樹元素以及相對于在樹視圖重配置之前曾與指向光標(biāo)垂直對齊的樹元素的不同垂直位移。當(dāng)指向光標(biāo)在查看窗口內(nèi)且在樹視圖的最上方元素之上時(shí),僅可以向下滾動(dòng)查看窗口,導(dǎo)致只要新的邏輯指向光標(biāo)位置尚未與經(jīng)裁剪的樹視圖的任何元素垂直對齊,則未改變的樹視圖就簡單地在查看窗口中向上移動(dòng)。一旦新的邏輯指向光標(biāo)位置與經(jīng)裁剪的樹視圖的元素第一次垂直對齊,則包括該元素在內(nèi)的分支變?yōu)榛顒?dòng)分支且被自動(dòng)展開。如果對樹視圖的更新導(dǎo)致新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置不匹配,則還自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得新的邏輯指向光標(biāo)位置和實(shí)際指向光標(biāo)位置相同。例如,如果將圖27中所示的查看窗口向下滾動(dòng)等價(jià)于4個(gè)樹元素的高度的距離,則作為結(jié)果的樹視圖對應(yīng)于圖28,因?yàn)樾碌倪壿嬛赶蚬鈽?biāo)位置與concept_1_1_1垂直對齊且包括concept_1_1_1在內(nèi)的分支變?yōu)榛顒?dòng)分支且由于水平指向光標(biāo)位置而展開至樹級別3。由于新的邏輯指向光標(biāo)位置已經(jīng)匹配實(shí)際指向光標(biāo)位置,不需要對經(jīng)更新的樹視圖的垂直移動(dòng)。當(dāng)指向光標(biāo)在查看窗口內(nèi)且在樹視圖的最下方元素之下時(shí),僅可以向上滾動(dòng)查看窗口,導(dǎo)致只要新的邏輯指向光標(biāo)位置尚未與經(jīng)裁剪的樹視圖的任何元素垂直對齊,則未改變的樹視圖就簡單地在查看窗口中向下移動(dòng)。一旦新的邏輯指向光標(biāo)位置與經(jīng)裁剪的樹視圖的元素第一次垂直對齊,則包括該該元素在內(nèi)的分支變?yōu)榛顒?dòng)分支且被自動(dòng)展開。如果對樹視圖的更新導(dǎo)致新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置不匹配,則還自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得新的邏輯指向光標(biāo)位置和實(shí)際指向光標(biāo)位置相同。例如,如果將圖29中所示的查看窗口向上滾動(dòng)等價(jià)于4個(gè)樹元素的高度的距離,則作為結(jié)果的樹視圖對應(yīng)于圖30,因?yàn)樾碌倪壿嬛赶蚬鈽?biāo)位置與concept_9_9_7垂直對齊,包括concept_9_9_7在內(nèi)的分支變?yōu)榛顒?dòng)分支且由于水平指向光標(biāo)位置而展開至樹級別3,且向上移動(dòng)經(jīng)更新的樹視圖,使得新的邏輯指向光標(biāo)位置和實(shí)際指向光標(biāo)位置相同。當(dāng)存在活動(dòng)分支且對查看窗口的垂直滾動(dòng)導(dǎo)致新的邏輯指向光標(biāo)位置與經(jīng)裁剪的樹視圖的元素垂直對齊,且該樹元素不同于之前曾與指向光標(biāo)垂直對齊的樹元素,則活動(dòng)分支改變。因此,自動(dòng)收起當(dāng)前活動(dòng)分支,且自動(dòng)展開新的活動(dòng)分支。如果對樹視圖的更新導(dǎo)致新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置不匹配,則還自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得新的邏輯指向光標(biāo)位置和實(shí)際指向光標(biāo)位置相同。例如,如果將圖31中所示的查看窗口向下滾動(dòng)等價(jià)于4個(gè)樹元素的高度的距離,則作為結(jié)果的樹視圖對應(yīng)于圖32,因?yàn)樾碌倪壿嬛赶蚬鈽?biāo)位置與concept_8_9_2垂直對齊,包括concept_8_8_8在內(nèi)的分支不再是活動(dòng)分支且被自動(dòng)收起,包括concept_8_9_2在內(nèi)的分支變?yōu)樾碌幕顒?dòng)分支且由于水平指向光標(biāo)位置而展開至樹級別3,且向下移動(dòng)經(jīng)更新的樹視圖,使得在樹視圖更新之前曾顯示concept_8_8_8的垂直位置處顯示concept_8_9_2。如果將圖32中所示的查看窗口向上滾動(dòng)等價(jià)于4個(gè)樹元素的高度的距離,則作為結(jié)果的樹視圖對應(yīng)于圖31,因?yàn)樾碌倪壿嬛赶蚬鈽?biāo)位置與concept_8_8_8垂直對齊,包括concept_8_9_2在內(nèi)的分支不再是活動(dòng)分支且被自動(dòng)收起,包括concept_8_8_8在內(nèi)的分支變?yōu)樾碌幕顒?dòng)分支且由于水平指向光標(biāo)位置而展開至樹級別3,且向上移動(dòng)經(jīng)更新的樹視圖,使得在樹視圖更新之前曾顯示concept_8_9_2的垂直位置處顯示concept_8_8_8。當(dāng)向上或向下滾動(dòng)查看窗口將分別導(dǎo)致新的邏輯指向光標(biāo)位置在樹視圖的最上方元素之上或最下方元素之下時(shí),滾動(dòng)約束生效,減少滾動(dòng)距離,分別使得新的邏輯指向光標(biāo)位置與經(jīng)裁剪的樹視圖的最上方或最下方元素垂直對齊。因此,自動(dòng)收起當(dāng)前活動(dòng)分支(如果有的話),且包括經(jīng)裁剪的樹視圖的最上方或最下方元素在內(nèi)的分支分別變?yōu)樾碌幕顒?dòng)分支并被自動(dòng)展開。如果對樹視圖的更新直接導(dǎo)致新的邏輯指向光標(biāo)位置與實(shí)際指向光標(biāo)位置不匹配,則還自動(dòng)垂直移動(dòng)經(jīng)更新的樹視圖,使得新的邏輯指向光標(biāo)位置和實(shí)際指向光標(biāo)位置相同。這是與由對查看窗口的垂直滾動(dòng)所引起的行為相同的行為,對查看窗口的垂直滾動(dòng)導(dǎo)致新的邏輯指向光標(biāo)位置分別與經(jīng)裁剪的樹視圖的最上方或最下方元素垂直對齊。如本領(lǐng)域技術(shù)人員將認(rèn)識到的:本原理的各方面可以體現(xiàn)為設(shè)備、系統(tǒng)、方法或計(jì)算機(jī)可讀介質(zhì)。因此,本原理的各方面可以采用硬件實(shí)施例、軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。此外,本原理的方案可以采用計(jì)算機(jī)可讀存儲介質(zhì)的形式??梢允褂靡粋€(gè)或多個(gè)計(jì)算機(jī)可讀存儲介質(zhì)的任意組合。本原理的各方面可以例如至少部分地實(shí)現(xiàn)為包括代碼部分在內(nèi)的計(jì)算機(jī)程序,其用于在可編程設(shè)備上運(yùn)行時(shí)執(zhí)行根據(jù)本發(fā)明的實(shí)施例的方法的步驟,或者使得可編程設(shè)備能夠執(zhí)行根據(jù)本發(fā)明的實(shí)施例的設(shè)備或系統(tǒng)的功能。此外,在圖2和圖3中示出的任何連接可以是直接或間接的連接。此外,本領(lǐng)域技術(shù)人員將認(rèn)識到在邏輯塊之間的邊界僅是說明性的,且備選實(shí)施例可以合并邏輯塊或?qū)Ω鞣N邏輯塊應(yīng)用對功能的備選分解。當(dāng)前第1頁12當(dāng)前第1頁12