はじめに
Delphi for PHPは、Windows向けビジュアル開発ツールとして定評のあるDelphiの開発スタイル、つまり、コンポーネントをドラッグ&ドロップ操作で配置し、プロパティとイベントを設定して開発するスタイルで、PHPによるWebアプリケーションを開発できるツールです。
Delphi for PHPの基本的な使い方を紹介する3回シリーズの第2回では、画面のレイアウトや制御、複数のページにまたがる処理などに挑戦してみましょう。
これまでの記事
コンポーネントのいろいろ
Delphi for PHPに搭載されているコンポーネントフレームワークVCL for PHPには、さまざまな部品が用意されています。ここでは、よく使うコンポーネントについて簡単に紹介することにしましょう。
Label
ページに表示するテキストです。テキストは、Captionプロパティで設定します。Font.Size、Font.Color、Font.Familyなどのプロパティで表示するテキストのフォントを変更できます。テキストには、Linkプロパティを使って、ハイパーリンクを設定することもできます。
Labelのテキストには、HTML形式のテキストを指定することもできます。つまり、複雑なテキスト要素をLabelを使って表現することも可能です。
Edit
入力ボックスです。入力文字は、Textプロパティで設定/取得できます。MaxLengthプロパティで、最大入力文字数の設定も可能です。なお、パスワード入力用に使用する(入力文字をマスクする)場合には、IsPasswordプロパティをtrueに設定します。
Memo
複数行のテキスト入力にはMemoを使います。入力された複数行のテキストへは、Textプロパティでアクセスできますが、各行に個別にアクセスするには、Linesプロパティを使います。例えば、LabelにMemoの2行目のだけを表示するには、次のように記述します。
$this->Label1->Caption = $this->Memo1->Lines[1];
Button
ボタンです。ボタンをクリックしたときの動作は、OnClickイベントに記述します。
CheckBox
チェックボックスです。ボックスの横に表示されるテキストはCaptionプロパティで設定します。チェックされているかどうかはCheckedプロパティで調べます。
RadioGroup
グループ化されたラジオボタンです。グループのタイトルはCaptionプロパティで設定します。ここで設定したテキストは、グループを表す枠の上に表示されます。複数のラジオボタンはItemsプロパティで定義します。Object InspectorではString List editorを使って入力します。
選択されているボタンの順番は、ItemIndexプロパティで調べます。
ListBox
選択リストです。リスト項目はItemsプロパティで定義します。定義する項目にはkeyとvalueがありますが、keyが実際にフォームで保持される値、valueがリストに表示される文字列です。
ComboBox
ドロップダウン型の選択リストです。リスト項目はListBox同様、Itemsプロパティで定義します。
Panel
Panelの上には、他のコンポーネントを配置することができます。Panelには、色をつけたり枠線をつけて画面上の領域を表すこともできますが、色を付けずに、単純に複数のコンポーネントのレイアウトをグループ化して管理するために使うこともできます。