視窗基本概念:設定環境定義
本節提供視窗型使用者介面的結構概觀。在瞭解這些準則的其餘部分時,會需要這份概觀。
視窗型使用者介面分成幾個視窗。您可以在畫面中四處移動這些視窗,將它們堆疊起來,以及將它們縮小成圖示。系統通常會有一個主視窗和幾個次視窗。主視窗處理與使用者的主要互動,通常會含有任意數目的物件。次視窗用來支援與主視窗的互動,它會提供主視窗各個物件及其作業的詳細資料。
主視窗
主視窗包含用來與使用者互動的任意數目的物件。使用者與系統互動時,通常會先選取一或多個物件,比方說,他會按一下這些物件,再選擇一項針對所有所選物件來執行的作業(如使用功能表)。一般作業包括:剪下、複製、貼上、
刪除和檢視內容。
主視窗通常會有一個功能表列,供使用者選擇作業。使用者也可以利用蹦現功能表來選擇作業(用滑鼠右鍵按一下物件本身),也可以直接操作(按一下和拖曳物件)。由於所有物件不一定能放在主視窗內,因此,使用者通常可以利用捲動軸來捲動物件,或調整視窗大小。另外,主視窗通常可以分成幾個窗格(定義視窗的子區域),使用者也可以調整這些窗格大小。
組合
使用者介面中的組合物件是在視覺上由其他物件組成的物件。例如,段落是字元的組合,複雜繪圖物件是更多初始繪圖物件的組合。
次視窗
次視窗支援主視窗,它會提供主視窗各個物件及其作業的詳細資料(如內容)。主視窗通常只會顯示物件的少數內容。您可以開啟內容視窗(這是一個次視窗)來檢視物件的內容,內容視窗會顯示物件的所有屬性。使用者通常可以利用開關和按鈕、刻度、組合框和文字欄位之類的控制項來變更屬性。
請注意,在主視窗和次視窗之間,通常會有一條有時會很不自然的細線,這些視窗可能會顯示出相同層次的複雜度。不過,主視窗和次視窗會有兩項主要差異:
-
主視窗通常對應用程式而言更重要,因為它們必須提供大規模的可用性。因此,開發工作焦點往往比較集中在主視窗上。
-
次視窗通常是因為導覽主視窗而顯示,但反之不然。
除了內容視窗,還有其他類型的次視窗,如對話框、訊息框、選用區和蹦現視窗。
許多應用程式都是以檔案為基礎。使用者可以利用檔案物件的開啟作業來啟動這些應用程式(例如,按兩下資料夾中的檔案圖示)。它們的主視窗會顯示這個檔案所儲存的物件。檔案的一般作業包括儲存檔案、另存新檔、
開啟舊檔和開新檔案,它們通常可利用主視窗中的檔案功能表來選取。另外,主視窗通常也能顯示多個檔案(也稱為多重文件介面,或 MDI),可讓使用者切換不同的檔案。
視覺化維度
可用的主視窗的關鍵之處,在於當視覺化呈現所包含的物件及其屬性時,會使用各種視覺化維度。提供的屬性超出識別所需範圍的好處如下:
-
使用者不需要過度瀏覽視窗,因為您減少了必須顯示的視窗數目(當使用者必須看到主視窗所提供的屬性時)。
-
使用者可以同時見到不同物件的不同方面,在進行比較和開始辨識型樣時,它們通常很有幫助。視覺化維度的一項好處是鼓勵使用者發展在指尖上全新的工作觸感。
視覺化維度如下:
以下說明這些維度。不過,當設計物件的視覺化時,請注意可用的螢幕區域。請嘗試讓使用螢幕區域的額外負荷儘可能小,並考量是否值得為了多個視覺化維度而使用額外的螢幕區域。使用者也許只需要一份名稱清單,因為使用者的需求是看到儘可能多的物件。
請注意務必使用或展開這些視覺化維度,使它們能夠唯一識別物件。在下面的這個主題中,我們也併入了一項討論(請參閱下面的「識別」一節)。
另外,也請注意,您可以關聯於時間維度來使用視覺化維度,例如,藉由移動物件(它們的位置會隨著時間而改變)或變更物件形狀或顏色(它們的狀態會隨著時間而改變);下面的「形狀」一節討論後一種情況。
位置
位置所能提供最符合直覺的方面是真實世界的位置。例如:
-
地理資訊系統 (GIS),它會顯示一份地圖,供您依照真實世界的情況,將物件呈現在相同的經度和緯度上。
-
電腦輔助設計 (CAD) 程式,它會完全依照真實世界的座標來呈現物件及其環境。
-
「所見即所得」(WYSIWYG) 編輯器,它會依照物件(字元)在輸出報表紙上的位置,顯示在視窗的相同位置上。
顯示真實世界的大小,有時恰當(CAD 程式和 WYSIWYG 編輯器範例),有時不恰當;例如,當物件大小比物件間距小得多時,便是如此。
例如,想像我們有一個航班訂位系統,使用者必須在其中輸入目的地。顯示一份含有不同機場的地圖(機場是一個物件),便是可能的呈現方式之一。當然,真實世界的機場大小並無關緊要(它也太小,看不到),因此,所有機場都會顯示成相同大小的圖示。
這個範例也說明了即使真實世界的位置無關緊要,但只要能協助使用者識別物件,仍可以使用它們。在這個範例中,使用者不需要知道機場的位置。不過,如果使用者熟悉地理,地圖會比清單容易找到目的地。
您也可以利用位置來代表「虛擬」的真實世界位置。例如,想像一個家庭購物系統,在這個系統中,使用者可以從不同的商店購物。顯示一份放置了不同商店的(虛擬)購物中心概要圖(商店是一個物件),便是可能的呈現方式之一。這個概要圖與這些商店的真實位置無關,它只是利用使用者的空間記憶:x-y
位置比較好記,清單或階層中的項目比較不好記。
位置的另一個用法是顯示物件之間的關聯:所有垂直位置相同的物件是用一種方式來關聯,所有水平位置相同的物件則用另一種方式來關聯。試算表便是一個範例。
另一個類似情況是用一個軸來代表某個屬性的值範圍。例如,在旅遊訂位系統中,預訂的航班(航班是一個物件)可以沿著水平時間軸來放置,以顯示它們的時間關係、它們將持續多久,以及使用者將在每個目的地停留多久。這些都是使用者不需要知道的東西,但若能放在不顯眼的地方,看到它們總是比較好。
如果您不要呈現整個值範圍來使用這麼多螢幕區域,您可以收合物件之間的距離。在旅遊訂位範例中,這表示所有預訂的航班都是水平佈置,且沒有間距,但第一個航班靠左,它的右側緊接著第二個航班,依此類推。使用者不會看到他們將在每個目的地停留的時間長度,但他們可以看到航班持續的時間。
大小
在許多情況下,「大小」必須代表和位置相同的東西。例如,在 CAD 系統中,大小自然必須代表真實世界的範圍。不過,我們有時候可以在支援選取目的地的地圖上,自由選擇應該用哪個大小來代表(例如)飛機場。
在這些情況下,大小應該用來代表在直覺上最符合真實世界的物件大小感受的東西。如果是檔案,物件大小應該代表所佔用的磁碟空間量。如果是銀行帳戶,物件大小應該代表餘額。對大部分大小而言,相較於比例等級,對數等級比較好,因為比例等級通常會佔用太多螢幕區域。
由於大小實際上非常符合直覺,以致於即使大小並沒有意義,您也可能會考慮顯示它。畢竟,在真實世界中,不同事物(物件)會因不同的大小而佔用不同比例的視覺範圍。而且這並不突兀;它只是有助於我們辨別事物。同樣地,在使用者介面中使用不同的大小,通常也可協助使用者辨別不同的物件。
大小通常只應該用來呈現單一屬性,即便可能用水平範圍來呈現單一屬性,用垂直範圍來代表另一個屬性(這比較不符合直覺,使用者可能會感到混淆),也是如此。
水平範圍或垂直範圍應該與大小要說明的屬性(在對數上)成比例,另一個範圍則應該固定(或相依於例如名稱長度)。如果水平和垂直範圍都與相同屬性成比例,它通常不會附加任何價值:它會顯得很突兀,而且只會佔用更多螢幕區域。
形狀
在圖形式使用者介面中,形狀通常是用圖示來表示;形狀最好用來表示類型,因為安排外觀的差異比安排類型的差異更符合直覺。在真實世界中,同類事物的不同物件看起來通常會很類似,不同類型的物件,外觀便不同。例如,不同的椅子物件看起來都差不多(它們都有四條腿、一個座位及一個靠背),但車子和椅子的外觀便很不一樣。
因此,當不同物件屬於不同類型時,準則是什麼?
當然,不同類別應該視為不同類型。另外,也有部分屬性是「如同類型」。這些屬性必須有一組有限的可能值,且它們的值通常會決定物件能夠做什麼(透過作業及其他屬性的可能值)。這與真實世界相同,椅子和車子的最大差異是它們的使用方式:椅子用來休息,車子用來交通。
不過,當您分析應該視為不同類型的項目時,請記住,最重要的事是:使用者最可能將哪個屬性視為類型。
如果您沒有多個類別或任何如同「類型」的屬性,您便可以利用圖示,針對某個其他具有有限值的屬性來呈現不同的值,不過,這個屬性必須對使用者非常重要。
圖示通常也用來顯示物件的不同狀態(除了顯示類型之外)。當您選取物件時,它通常會依照兩個方式來顯示:顏色改成黑色,或顯示矩形外框。另一個可能的狀態是您開啟一個物件的內容視窗。一般而言,您也會有其他能夠顯示的特定應用程式專屬狀態,例如是否已讀取電子郵件。您只需確定狀態的呈現並不會讓使用者難以察覺類型,反之亦然。
顏色
根據視覺上的知覺,顏色可以分成三個元件。它們是:色調(紅、藍、棕等)、飽和度和明暗。不過,您不應利用不同的元件來代表不同的屬性,因為使用者會難以覺察。
色調可用來代表只含有限的可能值組之類型或屬性。不過,這最好用圖示來表示,因為在顏色內容和(大部份類型的)值之間,沒有這類符合直覺的安排,但圖示可以設計成使用者能夠理解它所代表的值。因此,如果找不到符合直覺的圖示,就可以利用色調來取代圖示。如果您有許多類型圖示,另一個方法是利用色調來將類型圖示分類(一些含有某個類似意義的圖示是紅色,一些含有另一個類似意義的圖示是藍色,依此類推)。
飽和度可用來代表含有值範圍的屬性,但這很容易造成醜陋且突兀的使用者介面,使用不同的飽和度會使眼睛感到不快,使用高飽和度則令人感到突兀。
明暗是最有用的顏色元件。它可用來代表含值範圍的屬性,且它不突兀,也適用於次等重要性的屬性。為了使明暗不突兀,您不應從全明(白)跳到全暗(黑),只應從不太暗(淺灰)到較暗(深灰)。對於許多由使用者來建立大部分物件的系統而言,它非常適合根據經歷時間來呈現物件;例如,前次變更之後所經歷的時間量。這可以協助使用者識別他們要使用的物件(通常是「前次變更之後的時間」最短的物件)。因此,如果您沒有確實必須要呈現給使用者的值範圍屬性,請考慮呈現經歷時間。
顏色通常用來使圖示顯得更動人,且可協助使用者快速分辨圖示。如果您提供雜色圖示,您大概不應該再將顏色用於其他目的。
由於有些人色盲,且不是所有畫面都支援顏色,因此,您不應利用顏色來作為顯示某些重要資訊的唯一手段。另一方面,當所用的顏色規劃妥善而不突兀時,使用者介面會顯得更動人。
識別
使用者必須能夠唯一識別每個物件。識別有時只需要其他視覺化維度,但這通常不夠。在圖示旁邊或上面顯示名稱是最常見支援識別的方式。名稱的好處是只要有很小的螢幕區域,就可以顯示大量明顯不同的名稱。
名稱最好可以從屬性值產生(通常是文字)。另一個方式是使用者在建立物件時指定名稱,但這要花時間,因此,可用性比較差。
有時候,圖示的形狀可以設計成內含名稱。這不但能節省螢幕區域,也能夠清晰表現圖示和名稱的關係。不過,這可能產生下列問題:
-
圖示必須空心(名稱放在這裡)。
-
名稱長度不固定,這表示圖示水平範圍必須隨著名稱長度而不同,或某些名稱必須截斷。
-
圖示必須寬度大於高度,因為所有長度合理的文字都是長大於寬。
因此,您通常必須將名稱顯示在圖示的下面或右邊,好處是螢幕區域用得少,壞處是物件(圖示+名稱)會寬大於高。如果空間不足以完整顯示名稱(這是可能的,因為圖示通常不需要命名,您就能識別它),您可以利用游標停在圖示上所顯示的蹦現視窗來顯示名稱。
如果您可以在字型和屬性值之間找到符合直覺的對映,名稱字型可用來顯示選項有限的屬性,例如,您可以利用粗體或斜體來區分物件,或強調重要性。不過,大部分情況都不適合使用字型,因為它太突兀,往往不符合直覺。
如果您顯示名稱(或就此而言,任何允許使用者改變的其他文字),您應該支援直接在主視窗內編輯名稱。另一個方式是使用者要求重新命名的作業,再輸入新名稱,或開啟內容視窗,在其中編輯名稱。在主視窗中直接編輯名稱,不但比較快,而且也符合「在哪裡看見,在哪裡改變」的原則。
強力尋找和選取
如果應該變更或處理的物件群組是組合的,因而使用者可以表達用來識別它們的選取準則,主視窗的搜尋工具可以解決這個問題,它一律會選取所有符合準則的項目。
搜尋有兩種可能的管理方式:
-
在主視窗中選取搜尋準則所適用的所有物件。如果您無法保證所有找到的物件都同時出現在主視窗中(因為它們可能分得太散),您也可以在搜尋視窗中顯示一份點選清單。在搜尋之後,使用者會指定其他的搜尋準則,或在所選的物件上執行作業。這個方法的好處是,使用者可以在所有符合搜尋準則的物件上,進行某項作業的排序。
-
您在搜尋視窗中提供一個搜尋按鈕,用來選取下一個符合搜尋準則的物件,以及捲動主視窗的內容來顯現這個物件。在搜尋之後,使用者可以在所選物件上執行作業,再繼續循序搜尋符合搜尋準則的物件。這個方法的好處是使用者會在週遭看到每個找到的物件(在主視窗,而不是在個別的點選清單中)。
在許多情況下,您會想將這兩個情況結合起來,例如,在循序搜尋視窗中併入全選按鈕,或在並列的搜尋視窗中併入檢視下一個按鈕。
排序
排序的一個範例是系統在垂直方向上,依名稱的字母順序或屬性值來排列所有物件。之後,使用者便可以捲動瀏覽物件。這是既關聯於實作,也關聯於使用者作業的最簡單的可能瀏覽支援。當使用者一律知道所需要之物件的名稱(或我們用來排序的屬性)時,排序運作得最好。通訊錄便是應該實作這個方式的系統範例。主視窗通常應該會有一項用來變更排序順序和/或準則的作業。
使用者控制的繼承關係
WYSIWYG 編輯器便是使用者控制的繼承關係範例,在這裡,您會定義每個段落所屬的「樣式」,之後,再定義這個樣式(也就是屬於這個樣式的所有字元)的佈置方式。
相較於搜尋工具,這有一個缺點,就是使用者控制的繼承關係只支援變更多個物件的屬性(關聯也可能包括在內),但不支援執行作業。另外,使用者控制的繼承關係也會帶來額外負荷,因為使用者必須明確定義和維護群組(也就是可用的樣式)。還有,它也是一個比較複雜的概念。
不過,如果無法指定物件的搜尋準則,或使用者必須進行屬性值的相對變更(如增加 2),則提供使用者控制的繼承關係也許是可行的解決方案。
使用者控制的繼承關係若要有用,類別的本質必須是能夠將物件分類到大部分屬性值都相同的群組(對使用者有相同的邏輯意義)中。
相較於搜尋工具,這有一個好處,就是使用者控制的繼承關係支援置換;例如,變更屬性值,不過,前提是尚未在物件中明確定義屬性值。另外,使用者控制的繼承關係也可讓使用者建立更一般(因而也更有力)的屬性值定義;例如,繼承這個樣式的字型,但增加兩個像素。當群組沒有很容易指定的搜尋準則時,使用者控制的繼承關係尤其有用。
您將支援的使用者控制繼承關係所針對的類別可以繼承它本身,或您也可以建立一個專用來被繼承的新類別。讓類別繼承本身,功能會強一點,因為相同物件可用來作為繼承來源,也可以執行原本就是針對這個物件的事項,例如,作為一張發票、作為一個帳戶等。如此一來,使用者(和系統)需要管理的類別會比較少。從另一方面來說,建立一個作為繼承來源的新類別,好處是更容易理解,因為繼承關係清楚有別於類別的正常作業。在大部分情況下,建立新類別都是最好的解決方案,當使用者不太有電腦和物件導向模型的經驗時,尤其如此。您建立的新類別最好應該繼承它本身,以便支援多層次的繼承。
對大部分的系統而言,使用者通常必須變更特定物件的繼承群組,因為使用者無法事先確切知道應該如何建立繼承群組的結構。請提供這方面的作業。
如果您的系統決定支援使用者控制的繼承關係,請分析必須繼承的項目(屬性、關聯、類別),之後,只支援這些項目的繼承關係。這會使功能的管理方式簡單一些(對使用者和開發人員而言,都是如此),但會比較不通用。請建立新類別中所應繼承之事物的模型。之後,就可以在繼承的類別和被繼承的類別中,建立許多屬性的模型。請記住,使用者控制的繼承關係意謂著節省使用者的時間,而不是節省您的時間。如果類別繼承它本身,就隱含了什麼都可以繼承。
請判斷使用者是否真正需要建立所繼承之類別的新物件,或系統是否能夠一勞永逸提供足夠的物件數量。禁止使用者建立新物件會大幅降低繼承的彈性,但從另一方面來看,操作會更簡單。
另外,也請決定繼承物件中的數值屬性變更應該是相對於所繼承的值來解譯,或解譯成固定值。例如,物件繼承了字型大小 12,但使用者將它改成 14。在相對的解譯中,系統會記住物件的字型大小是繼承的值
+2;也就是說,如果被繼承物件的字型大小有了改變,繼承物件也會改變字型大小。如果您支援相對解譯,被承物件的屬性應該加上附註(因為當您要檢查繼承關係時,會查看這裡)。使用者必須知道這是相對解譯(如 "font size:
12+2=14",而不是 "font size: 14"),這一點非常重要。您可以探索情境來瞭解適合相對解譯和適合固定解譯的情況。您也可能必須支援這兩者。
由於使用者控制的繼承關係只適用於中級使用者和超級使用者,因此,您必須將它設計成不會干擾正常的使用(例如,當使用者不使用繼承關係之時);否則,可能會嚇到新手。
請記住,使用者會因為您建構的使用者控制繼承關係而活得更自在;它不必通用,也不需要純正,但必須可用。
瀏覽階層可讓使用者(也可能是系統)將物件分類到依階層組織的各個主視窗或組合項目中。瀏覽階層可確保使用者只需要搜尋一個(或少數幾個)種類。這可以減少給定時間點所需顯示的物件數。缺點在於(通常是)使用者必須管理分類。檔案瀏覽器便是這項技術的範例:使用目錄或資料夾是為了協助使用者尋找檔案。
視窗管理
視窗大小和位置通常完全由使用者控制。不過,您可以考慮讓系統影響視窗的大小和位置,以減少視窗操作的額外負荷。
主視窗越大,能顯示的物件也越多,但使用的螢幕區域也比較大。主視窗顯示的物件通常應該儘可能多,但不要無謂地佔用螢幕區域。
-
使每個主視窗的大小足以顯示所有物件,但不要比螢幕大。使每個主視窗的大小足以顯示全部物件,但避免不呈現任何有用東西的區域,如桌面發佈者的邊距。即使您有顯示這些空白區域的空間,也是如此,它們可能會遮蔽其他應用程式。
-
記住,使用者會在階段作業之間調整大小。如果物件數目增加,除非已是全螢幕高度,或使用者選擇小於預設值的大小,否則,請增加視窗大小來顯示所有物件。如果物件數目減少,除非使用者選擇了大於預設值的大小,否則,請縮減大小。這個規則可確保您會遵循使用者重新調整大小的作業意圖。
主視窗大小進一步的限制,可能在於您是否經常需要平行於與其他應用程式來使用應用程式。若是如此,您可能會將視窗的預設大小最大化到半個螢幕(而不是全螢幕)。
請設定主視窗的預設位置,使它儘可能不被其他應用程式遮蔽。如果您必須遮蔽部分視窗,請選擇很久未用的視窗,但這些視窗至少要留一些可見的部分,使用者才能夠輕易啟動它們。
套用上述規則的一項缺點是,使用者的控制範圍會縮小(系統會未經要求擅自調整大小,且不會在階段作業之間記住使用者的重新定位)。因此,如果您套用了這些規則,您應該容許使用者關閉它們(利用控制項)。
對於次視窗而言,它們的大小和位置應該是不遮住呼叫它們的來源視窗,也可能因而不會遮住其他次視窗。如果它們必須遮住呼叫它們的來源視窗,請嘗試確定它們不會遮住所選的物件。對次視窗而言,遮住重要事物(如所選的物件)是一項常見的可用性缺失。
對於主要主視窗以外的主視窗而言,上一段的大小規則也適用。
不過,對話框應該放在作用視窗上,將它遮住。因為它們通常只是暫時存在,也比較小,當對話視窗在開啟狀態中,使用者通常不需要看到作用視窗。將對話框放在作用視窗上,可確保使用者會確認它們,且可以減少必要的滑鼠移動,因為游標通常已在作用視窗上。
對於內容視窗而言,屬性的數目決定了大小。如果太大(大約螢幕的 1/4),您應該使用較多欄標。
階段作業資訊
在各次階段作業之間,所有應用程式配置都應該儲存起來(使用者不需要指定它)。視窗的大小和位置、所選的視窗以及捲動軸的位置等,也應該儲存起來。當使用者重新啟動應用程式時,看起來應該與前次結束之時完全相同。因為在使用者啟動階段作業之後,第一件事通常便是回到前次階段作業結束時的狀態。
線上說明
線上說明是系統非常重要的部分。對大部分系統而言,設計妥善的說明系統甚至應該能夠取代使用者手冊。大部分專案都花許多時間來建構和產生手冊,但大部分使用者根本不讀使用手冊卻是已知的事實。您應該考慮將這些工夫投資在好的說明系統上。
您應該考慮的可能的說明工具有許多種:
-
主題說明是最重要的說明工具。它讓使用者進入主題或瀏覽現有的主題,以及提供這些主題的說明。關鍵是提供含有大量同義字的大型說明索引。請記住:當需要協助時,使用者不一定知道正確的詞彙。
-
物件說明是上下文相關說明。它會顯示說明使用者介面特定部分(物件)的文字。使用者會要求上下文相關說明,再選取使用者介面需要說明的部分。如果要有用,使用者介面的每個部分都應該有這類說明的支援。另一個方式是在蹦現視窗中提供隱含的說明,這是上下文相關說明的壓縮形式,當使用者逗留徘徊了幾秒鐘,系統便將它顯示在游標旁。利用蹦現視窗中的隱含說明,好處在於不干擾使用者介面的正常作業。
-
訊息區是系統用來列印主動提供的使用者動作「備註」(通常在主視窗中)的區域。如果提供的話,它應該是選用的。
-
精靈是一項通行的技術,當使用者要求如何執行某些動作的說明時,您應該考慮提供它。精靈會利用「手控」技術來引導使用者經歷一項並非無關緊要的作業。它會結合作業(按鈕)來顯示描述性的文字,讓使用者完成文字所說明的作業部分。另外,精靈也會問一些問題,且會根據使用者的回應來自動完成作業。對於少用而並非無關緊要的作業而言,精靈最好用。
在使用測試期間,最可能發現對於上下文相關說明和精靈的需求。在使用測試期間,如果使用者不瞭解使用者介面的不同部分是什麼,就表示需要上下文相關說明。如果使用者執行特定作業發生困難,就表示他需要精靈。
許多說明系統都有的問題是,它們都是為了初學者而撰寫(用大量文字解釋明顯的內容),或是為了專家而撰寫(預期使用者的知識與應用程式的設計人員一樣多的參考手冊)。對大部分系統而言,大部分使用者都是「改進中的中間等級」。請撰寫適合他們的說明文字。
復原
「復原」是非常有用的特性,不過,它通常很難實現(實作)。它讓使用者能夠學得更快,因為他們不必害怕毀損事物。它也可以減少遺失資訊的風險。避免遺失資訊的另一個方案,是要求使用者確認所有可能造成遺失資訊的作業。不過,這通常是不當的解決方案,因為它會增加許多額外的互動成本,使用者很快就會養成無意識地確認的習慣,結果這個解決方案也會成為不適用。
另一個雄心萬丈的選項是提供重做功能,可能包括多層次的復原和重做。不過,只需要第一個復原層次,就能增加大部分可用性。
巨集代理程式
如果您提供巨集,利用代理程式來連續監視使用者動作並找出重複互動序列,可能會很有幫助。在找到重複的互動序列之後,代理程式會立即為它建立一個巨集(在徵求使用者同意之後)。我們姑且這麼說,使用者安排了兩個文字段落的「底線」,且這兩次使用者也在安排「底線」之後,立即將文字顏色改成藍色。之後,代理程式應該會問使用者是否需要一個巨集,利用巨集來針對所選文字段落同時執行「底線」和「將顏色設為藍色」。若是如此,代理程式便應該建立這樣的巨集及這個巨集的執行按鈕(或功能表項目)。
如果使用者在錄製期間選取某個物件,這通常應該解譯成一項「差異」規格,也就是關聯於上一項選擇而選取了哪個物件(如同「選取下一個」、「選取第一個子項」等)。
您是否應該將物件屬性的變更解譯為差異規格(例如,將屬性值從 12 改成 14 視為增加 2,而不是設為
14),並不明顯。將它解譯成差異規格通常比較有力,因為針對多個物件將屬性改成固定值,通常可以藉由選取多個物件,再為它們開啟一個屬性視窗來完成,您可以在其中一勞永逸設定屬性(設為 14)。
動態高亮度標示
類別之間的關聯通常都是雙向的,這表示在真正的使用者介面中,兩個物件都會顯示這個關聯。如果焦點在 A 物件的使用者可以看到 A 關聯於 B
物件,對這位使用者而言,相反方向通常也有意義(也就是說,當焦點是 B 物件時,使用者也可以看到 B 關聯於 A)。關聯通常會顯示在物件的內容視窗中,用名稱來識別相關聯的物件。
一般而言,主視窗內物件關聯的視覺化通常很難處理。用箭頭或線條來視覺化呈現關聯,通常會成為一個「蛇窩」,相當不吸引人且突兀。好的關聯視覺化,是在游標移到某個相關聯的物件時,強調顯示所有相關聯的物件。註腳關聯於文件編輯器中的字元便是一個範例,當游標移到相關字元時,會強調顯示這個註腳。
|