本節我們將為按鈕新增事件,滑鼠點擊按鈕時,程式碼便可執行各種操作。本次示範兩種效果:點擊按鈕變更按鈕文字、點擊另一顆按鈕關閉視窗。
建立圖形介面專案
點擊頂部主選單:Project(專案)→ New Project(新增專案)→ Application(應用程式)(亦可透過 File(檔案)→ New → Project → Application 建立),即可產生全新GUI圖形程式。


或是


建立完成後會開啟多個視窗:頂部主選單列、左側物件檢視器(Object Inspector)、佔據大部分畫面的程式碼編輯器(Source Editor)
在表單上新增兩顆按鈕
視窗頂部選單下方為控制項分類標籤列

上圖紅框即為控制項分類標籤列,以分頁分類各種元件,第一個是Standard(標準控制項)、第二個是Additional…
若未選取「Standard(標準控制項)」分頁,請滑鼠點擊切換;
找到按鈕圖示(印有OK的矩形)並單擊,再點擊 Form1 表單左側位置,表單上會出現名稱為 Button1 的按鈕;
再次點擊標準列的按鈕圖示,在表單右側點擊,建立第二顆按鈕 Button2。
若不清楚操作步驟,可參考上一節配套影片。
依照上述步驟,我們完成兩顆按鈕的新增

設定Button1文字並撰寫點擊事件
單擊選取 Button1,左側物件檢視器會顯示該元件所有屬性:
若此設定面板隱藏,可點擊控制項列的箭頭按鈕喚出(快捷鍵F12亦可切換表單/程式碼介面)。

選取第一顆按鈕後,左側面板上方會顯示目前選取元件為Button1,面板下方分為兩個分頁:屬性、事件。

屬性分頁:用於調整按鈕外觀、樣式、尺寸等視覺設定。
事件分頁:用於綁定按鈕互動行為,例如滑鼠點擊、移入、移出等動作。
- 找到頂部
Caption(標題)屬性,將預設值Button1修改為Press,按下Enter或點擊空白處,按鈕文字會同步更新; - 切換至物件檢視器的「Events(事件)」分頁,此處列出按鈕所有可觸發事件(單擊、滑鼠移入、滑鼠移出等);
- 找到
OnClick(單擊事件),點擊右側三點...按鈕,編輯器會自動切換至程式碼頁,產生空白點擊函式:

點擊空白區域確認修改,表單上的按鈕文字會同步變更。

維持按鈕選取狀態,切換至Events(事件)分頁

此頁面列出按鈕內建全部事件,我們可為按鈕綁定任意互動邏輯。以OnClick單擊事件為例:使用者滑鼠左鍵點擊按鈕時,系統就會執行綁定的事件函式。

選取OnClick列,點擊右側 ... 按鈕,IDE會自動產生空白事件處理函式並跳轉程式碼編輯器。

在begin與end之間加入一行程式碼,實現點擊按鈕後變更按鈕顯示文字。
procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.Caption := 'Press again'; // 輸入這行程式碼
end; Code language: JavaScript (javascript)
程式執行後,點擊按鈕就會執行區塊內的程式碼,進入Pascal邏輯區段實作各種業務操作。多數GUI桌面程式皆採用此事件驅動開發模式。

快捷鍵 F12 可快速切換回表單設計介面。
設定Button2文字與關閉程式事件
選取 Button2,在物件檢視器將 Caption 修改為 Exit;
同樣切換至OnClick事件,點擊 ... 跳轉程式碼,填入視窗關閉指令:
procedure TForm1.Button2Click(Sender: TObject);
begin
Close; // 關閉視窗、離開程式
end;Code language: JavaScript (javascript)

儲存專案(務必隨時儲存)
頂部選單選擇 Project → Save Project As(另存新專案),先儲存表單單元檔(副檔名.pas);
隨後彈窗要求儲存專案設定檔(副檔名.lpi)。
注意:單元檔名與專案名不可完全相同,否則編譯會報「重複識別符」錯誤
編譯並執行程式
兩種執行方式:
- 選單路徑:
Run(執行)→ Run; - 快捷鍵:直接按下
F9。IDE會自動完成編譯、連結,無語法錯誤則直接啟動成品程式。
執行後彈出成品視窗(無設計網格點),即為軟體主介面:
- 點擊
Press按鈕,按鈕文字切換為Press again; - 點擊
Exit按鈕,視窗關閉、程式結束,自動返回帶網格的表單設計介面,可繼續修改程式碼。
