按鈕點擊切換文字示範

上一堂課我們新增了兩個按鈕,一個點擊後會變更按鈕文字,另一個點擊後關閉目前視窗。本節將為第一個按鈕撰寫較複雜的邏輯:點擊按鈕切換文字,再次點擊還原文字,重複輪流切換。主要用來學習 Pascal 語法。

打開先前建立的專案

你可以直接進入 pas 檔內的點擊事件函式修改程式碼,也可依照下方步驟定位到第一個按鈕的事件函式。

將上方事件函式替換為以下程式碼

procedure TForm1.Button1Click(Sender: TObject);
{ 運用按鈕Tag屬性記錄狀態,實現文字切換 }
begin
  // 判斷Tag標記數值,0=預設狀態,1=切換後狀態
  if Button1.Tag = 0 then
  begin
    Button1.Caption := 'Press again';  // 修改按鈕顯示文字
    Button1.Tag := 1;                  // 標記切換為1
  end
  else
  begin
    Button1.Caption := 'Press';        // 還原原始文字
    Button1.Tag := 0;                  // 重設標記為0
  end;
end;Code language: JavaScript (javascript)

定位按鈕事件的操作步驟

打開先前儲存的 Lazarus 專案,切換至 Form1 設計介面,點擊介面上名稱為 Press 的按鈕(Button1)

選取控制項後,右側「物件檢視器(Object Inspector)」切換至 Events(事件) 分頁

找到 OnClick 點擊事件,點擊右側輸入欄,再點擊欄尾 ... 省略符按鈕,會自動跳轉至程式碼編輯器對應函式

清空原有程式碼,貼上下方完整程式碼,儲存專案 → 編譯 → 執行程式,點擊按鈕即可重複切換文字

  1. Tag 屬性:所有視窗控制項內建的整數屬性,用來存放自訂數值標記,本範例僅使用 0、1 兩種狀態
  2. 第一次點擊:Tag=0 → 文字變更為 Press again,Tag 賦值 1
  3. 第二次點擊:Tag=1 → 文字還原為 Press,Tag 重設為 0
  4. 持續點擊會來回切換,實現開關/切換效果

以上程式碼透過按鈕的Tag屬性儲存按鈕狀態,藉此達成文字切換功能。

執行示範效果

按鈕點擊切換文字示範

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *