本節ではボタンにイベントを追加します。ボタンをクリックするとコード内で各種処理を実行できます。ここでは2つの動作を実演します。1つ目はクリック時にボタンの文字を変更、2つ目は別のボタンをクリックしてウィンドウを閉じる処理です。
GUIグラフィックプロジェクトを新規作成
上部メインメニューをクリック:Project(プロジェクト)→ New Project(新規プロジェクト)→ Application(アプリケーション)(File(ファイル)→ New → Project → Applicationからも作成可能)、全新のGUIプログラムが生成されます。


または


作成完了後、複数のウィンドウが起動します。上部メニューバー、左側のオブジェクトインスペクタ(Object Inspector)、画面大部分を占めるソースエディタ(Source Editor)です。
フォームに2つのボタンを配置
上部メニューバー下部にコントロール分類タブバーがあります

上図赤枠がコントロール分類タブバーで、タブごとに部品が分かれています。1番目がStandard(標準コントロール)、2番目がAdditional…
「Standard(標準コントロール)」タブが選択されていない場合はマウスでクリックして切り替え;
ボタンアイコン(OKと書かれた長方形)をクリックし、Form1フォーム左側をクリックすると、Button1という名前のボタンが配置されます;
再度標準タブのボタンアイコンをクリックし、フォーム右側をクリックすると2つ目のボタンButton2が作成されます。
操作手順が分からない場合は前回の動画を参照してください。
上記手順で2つのボタンを追加します

Button1の文字設定とクリックイベント記述
Button1をシングルクリックで選択すると、左側のオブジェクトインスペクタに全プロパティが表示されます:
この設定パネルが非表示になっている場合は、コントロールバーの矢印ボタンをクリックすると表示されます(ショートカットF12でフォーム/コード画面を切り替え可能)。

1つ目のボタンを選択すると、左パネル上部に選択中の部品がButton1と表示され、パネル下部に「プロパティ」「イベント」の2タブが存在します。

プロパティタブ:ボタンの外観、スタイル、サイズなど表示設定を変更する箇所。
イベントタブ:ボタンのクリック・マウスオーバー・マウスアウトなど動作を紐付ける箇所。
- 上部の
Caption(タイトル)プロパティを探し、既定値Button1をPressに変更。Enterキーを押すか空白部分をクリックするとボタン文字が即時反映; - オブジェクトインスペクタの「Events(イベント)」タブに切り替え。ここにはボタンが発火可能な全イベント(クリック、マウス侵入、マウス退出など)が格納;
OnClick(クリックイベント)を探し、右側の三点...ボタンをクリック。エディタが自動でコード画面に遷移し、空のクリック関数が生成されます:

空白箇所をクリックして変更を確定すると、フォーム上のボタン文字が変わります。

ボタンを選択したままEvents(イベント)タブに切り替え

ここにボタン標準搭載の全イベントが表示され、任意の動作を紐付けられます。例としてOnClick:ユーザーがマウス左ボタンでクリックした際、紐付けたイベントメソッドが実行されます。

OnClick行を選択し、右側の...ボタンをクリックすると空のイベント関数が作成されます。

beginとendの間に1行コードを追加し、クリック時にボタン文字を変更する処理を記述します。
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)の保存を求められます。
注意:ユニットファイル名とプロジェクト名を完全同一にすると、コンパイル時に「重複識別子」エラーが発生します
コンパイルとプログラム実行
実行方法は2種類:
- メニュー:
Run(実行)→ Run; - ショートカット:直接
F9を押下。ソフトが自動でコンパイル・リンクを実行し、エラーがなければ完成したプログラムが起動します。
実行時に完成版ウィンドウ(デザイン用グリッド点なし)がポップアップ、これがソフトのメイン画面です:
Pressボタンをクリックすると文字がPress againに切り替わる;Exitボタンをクリックするとウィンドウが閉じプログラムが終了、自動的にグリッド付きのデザイン画面に戻りコード修正が可能。
