GUI设计

**圖形使用者介面**（英語：**G**raphical **U**ser **I**nterface，縮寫：**GUI**）是指採用圖形方式顯示的電腦操作使用者介面。與早期電腦使用的命令列介面相比，除了降低使用者的操作負擔之外，對於新使用者而言，圖形介面對於使用者來說在視覺上更易於接受，學習成本大幅下降，也讓電腦的大眾化得以實現。

雖然圖形使用者介面已經成為現代電腦的主要介面，然而這介面必定要透過在顯示器的特定位置，以「各種美觀、而不單調的視覺訊息」提示使用者「狀態的改變」，勢必得比簡單的文字訊息呈現，花上更多的電腦運算能力，計算「要改變顯示器哪些光點，變成哪些顏色」，功能命令的設計也比較複雜，現代作業系統的圖形複雜程度更遠超早期的 GUI。

## 歷史變遷

* 1950 年代 SAGE Project（美國空軍防空系統）和 Ivan Sutherland 提出，其於 1963 年開發的 Sketchpad 軟體為現在計算機輔助繪圖（CAD）的先驅。
* 1968 年，道格拉斯・恩格爾巴特在 SRI（Stenford Research Institute）開發 OLS 在線系統，並在 ACM/IEEE 會議上展示了所有演示之母，首次匯入滑鼠作為互動介面。
* 1970 年，部份 SRI 的研究人員進入全錄公司參與開發地球上第一個 WIMP 系統（視窗、圖標、選單和指針 / 下拉式選單），希望打造孩子也能輕鬆使用的系統。
* 1973 年第一個視覺化操作的電腦在全錄帕洛阿爾托研究中心（Xerox PARC）完成。該產品名為 Alto，但當時 GUI 是面向計算工作站開發的，用在文書處理還是新概念，Alto 雖然沒有販售，但取得的研發經驗眾多，是第一個把電腦所有元素所見即所得結合到一起的圖形介面作業系統。它使用 3 鍵滑鼠、位元運算監視器、圖形視窗、乙太網路連接。
* 1980 年 Three Rivers 公司推出 Perq 圖形工作站，圖形使用者介面（GUI）開始進入廠商視野中，不過此時電腦效能有限，能搭載 GUI 的產品主要是工作站等級的電腦，一般大眾很難接觸到。
* 1981 年全錄公司意識到後，才推出了 Alto 的繼承者 Star，曾首次使用了視窗設計。這部電腦仍為了工作站使用。
* 1983 年蘋果電腦公司推出 Apple Lisa 個人電腦，是全球第一款搭載圖形介面的個人電腦，但沒有取得商業上的成功。
* 1984 年蘋果電腦公司推出 Macintosh，這次 GUI 造成了首次風行。
* 1986 年首款用於 Unix 的視窗系統 X Window System 發布。
* 1988 年 IBM 發布 OS/2 1.10 標準版演示管理器（Presentation Manager），這是第一種支援 Intel 電腦的穩定的圖形介面。
* 1992 年微軟公司發布 Windows 3.1，增加了多媒體支援。
* 1995 年微軟的 Windows 95 發布，其視窗作業系統的外觀基本定型。
* 1996 年微軟發布 Microsoft Bob，此軟體具有動畫助手和有趣的圖片。
* 1996 年 IBM 發布 OS/2 Warp 4，它的互動介面得到顯著改善，至今仍有不少 ATM 執行這樣的系統。
* 1997 年 KDE 和 GNOME 兩大開源桌面專案啟動。
* 1997 年蘋果電腦公司發布 Mac OS 8，這個系統具有三維外觀並提供了 SpringLoaded Folder 功能。
* 2000 年蘋果電腦公司推出 Mac OS X 系統的預設外觀 Aqua。
* 2001 年微軟發布 Windows XP，實現了主題支援。
* 2003 年 Mac OS X v10.3 提供了一鍵單擊存取任何已打開視窗的功能。
* 2003 年 Sun 公司的 Java 桌面系統為 GNOME 桌面添加了和 Mac 類似的效果。
* 2006 年微軟發布 Windows Vista，對此前其視窗作業系統的外觀作了較大的修改，實現了 Aero 功能。

## 概要

在圖形使用者介面中，電腦畫面上顯示視窗、圖示、按鈕等圖形，表示不同目的之動作，使用者通過滑鼠等指標裝置進行選擇。

### 組成

**桌面**
: 在啟動時顯示，也是介面中最底層，有時也指代包括視窗、檔案瀏覽器在內的「桌面環境」。在桌面上由於可以重疊顯示視窗，因此可以實現多工化。一般的介面中，桌面上放有各種應用程式和資料的圖示，使用者可以依此開始工作。桌面與既存的資料夾構成理念相違背，所以要以特殊位置的資料夾的參照形式來定義內容。比如在微軟公司的 Windows XP 系統中，各種使用者的桌面內容實際儲存在 `系統碟（預設為C槽）:\Documents and Settings\[使用者名稱]\桌面` 資料夾（檔案夾）內。

　
: 牆紙，即桌面背景。可以設定為各種圖片和各種附件，成為視覺美觀的重要因素之一

**視窗**
: 應用程式為使用資料而在圖形使用者介面中設定的基本單元。應用程式和資料在視窗內實現一體化。在視窗中，使用者可以在視窗中操作應用程式，進行資料的管理、生成和編輯。通常在視窗四周設有清單、圖示，資料放在中央。

　
: 在視窗中，根據各種資料 / 應用程式的內容設有標題列，一般放在視窗的最上方，並在其中設有最大化、最小化（隱藏視窗，並非消除資料）、最前面、縮排（僅顯示標題列）等動作按鈕，可以簡單地對視窗進行操作。

* **單一檔案介面（Single Document Interface）**
: 在視窗中，一個資料在一個視窗內完成的方式。在這種情況下，資料和顯示視窗的數量是一樣的。若要在其他應用程式的視窗使用資料，將相應生成新的視窗。因此視窗數量多，管理複雜。
* **多檔案介面（Multiple Document Interface）**
: 在一個視窗之內進行多個資料管理的方式。這種情況下，視窗的管理簡單化，但是操作變為雙重管理。

　
: * **標籤**
: 多檔案介面的資料管理方式中使用的一種介面，將資料的標題在視窗中並排，通過選擇標籤標題顯示必要的資料，這樣使得接入資料方式變得更為便捷。

**清單**
: 將系統可以執行的命令以階層的方式顯示出來的一個介面。一般置於畫面的最上方或者最下方，應用程式能使用的所有命令幾乎全部都能放入。重要程度一般是從左到右，越往右重要度越低。命定的層次根據應用程式的不同而不同，一般重視檔案的操作、編輯功能，因此放在最左邊，然後往右有各種設定等操作，最右邊往往設有說明。一般使用滑鼠的第一按鈕進行操作。

* **即時清單（又稱功能表、上下文清單（Context Menu））**
: 與應用程式準備好的層次清單不同，在清單欄以外的地方，通過滑鼠的第二按鈕調出的清單稱為「即時清單」。根據調出位置的不同，清單內容即時變化，列出所指示的物件目前可以進行的操作。

**圖示**
: 顯示在管理資料的應用程式中的資料，或者顯示應用程式本身。

　
: 資料管理程式，即在資料夾中使用者資料的管理、進行特定資料管理的程式的情況下，資料通過圖示顯示出來。通常情況下顯示的是資料的內容或者與資料相關聯的應用程式的圖案。另外，點擊資料的圖示，一般可以直接完成啟動相關應用程式以後再顯示資料本身這兩個步驟的工作。

　
: 應用程式的圖示只能用於啟動應用程式。

**按鈕**
: 清單中，利用程度高的命令用圖形表示出來，組態在應用程式中，成為按鈕。

　
: 應用程式中的按鈕，通常可以代替清單。一些使用程度高的命令，不必通過清單一層層翻動才能調出，極大提高了工作效率。但是，各種使用者使用的命令頻率是不一樣的，因此這種組態一般都是可以由使用者自訂編輯。

### 其他

**資源回收筒**
: 為了實現檔案刪除的「假安全」功能而設定了「資源回收筒」（垃圾桶）功能。在檔案刪除的時候，暫時將其移動到系統特定的地方，一旦使用者發現刪除錯誤，還可以將其找回，從而實現防止錯誤刪除的目的。在麥金塔系統中，垃圾桶不僅可以刪除檔案，還可以進行各種各樣物件的刪除功能，如將抽取式硬碟從系統中移出，將光碟從光碟機中取出等等。

**應用程式啟動器**
: 從圖形介面上啟動應用程式有很多方式，有好幾種作業系統都採用清單形式的程式啟動器。NEXTSTEP 和 Mac OS X 中有一種稱為 dock 的操作面板型的工具，可以存放各種檔案和應用程式的資訊，並通過滑鼠點擊調出。

### 圖形使用者介面的工作管理

在圖形使用者介面中，使用者操作是以視窗為單位的。除了 MDI 和 Mac OS 以外，大多都是「視窗數量 = 工作數量」。因此在看整體介面的時候，怎樣進行工作管理是很重要的。Windows 等作業系統中，最常用的方式是在桌面上設定一個棒狀的「工作列」，放置各種視窗的圖示和標題，確保系統的可操作性和可視性，方便對視窗進行管理。其他的方法包括，在桌面上的清單中添加各個視窗管理清單，在桌面上顯示任務的圖示，用虛擬桌面的方式表面增加桌面的數量等等。在 Mac OS X 系統中使用 Dock 進行任務管理，但是還有 Exposé 進行視窗一覽顯示模式的功能。

### 指標裝置的操作

圖形使用者介面的基本操作是，用指標裝置（一般是滑鼠）進行指示操作，然後使用裝置上的按鈕（通常為兩到三個）進行動作的啟用。因此「位置」和「指示」都非常明瞭，從而實現可視操作。

指示的內容根據位置而不同。在資料管理應用程式中，第一按鈕進行指標所在位置資料的選擇，而兩次連續按鈕（所謂「雙擊」）可以調出預製的應用程式開始處理資料。
第二按鈕通常用來顯示即時清單。第二按鈕調出的清單可以再用第一按鈕進行選擇打操作。第三按鈕在 X Window System 中比較常用。

另外，最近四鍵、五鍵滑鼠相繼問世，各個按鈕可以在作業系統中進行動作定義。

### 圖形使用者介面與鍵盤

和命令使用者介面一樣，鍵盤在圖形使用者介面仍是一個重要的裝置。鍵盤不僅可以輸入資料的內容，而且可以通過各種預先設定的「快速鍵」等鍵盤組合進行命令操作達到和清單操作一樣的效果，並極大提高工作效率。

### 圖形使用者介面與各種裝置

除了上述的裝置以外，手寫板等操作，特別是在圖像資料操作中也扮演重要的角色。

### 觸控式螢幕圖形使用者介面

現在還有很多一些使用者介面，直接用手指、或者特殊的筆端輕觸觸控式螢幕上顯示的按鈕、圖示進行各種操作，已經非常普及，如自動取款機，汽車導航、媒體播放器、遊戲機等等，一般操作簡捷，直觀。蘋果公司的 iPhone 手機還有裝有支援多點觸控的作業系統。

## 採用圖形使用者介面的作業系統 / 應用程式

* Smalltalk
* macOS
* NEXTSTEP
* * Microsoft Windows
* X Window System（類 Unix OS、Linux）
* BTRON
* TownsOS
* MSX-View
* SX-Window
* BeOS
* Newton OS
* Zaurus OS
* Palm OS
* iOS
* Android
* Firefox OS
* Pig OS

## 參考文獻

## 參見

* 人機互動
* 人因工程學
* 使用者介面
* 命令列介面
* Linux 圖形介面
* 介面外觀
* 面板
* 輕鬆存取
* WIMP
* 物件導向的使用者介面