コントロールの間にTSplitterコンポーネントを置くと、
実行時にコントロールのサイズを変更することができます。
幅の変更
デフォルト設定では左右のコントロールサイズを変更できます。
ここからはサンプルプロジェクトを作成しながら解説します。
TMemoコンポーネントをフォーム上に配置し、Alignプロパティを alLeft に設定します。
次にTSplitterコンポーネントを配置します。
最後にTPanelコンポーネントを配置し、Alignプロパティを alClient に設定します。

プロジェクトを実行し、MemoとPanelの間にあるSplitter上にマウスを置くと、カーソルの形が変わります。
そのままドラッグすることで領域のサイズが変更されます。

デフォルトの状態ではSplitterを右端や左端に移動させると、MemoやPanelが見えなくなってしまいます。
これを防ぐにはAutoSnapプロパティをFalseにします。
すると、SplitterでMemoやPanelのサイズが変更されますが、
小さい方の幅がMinSizeプロパティ以下に変更されなくなります。

高さの変更
続いて、幅ではなく高さを変更する方法をご説明します。
先程のサンプル画面の続きで開発していきます。
右側のPanel1上にTPanelコンポーネントを2つ置き、それぞれのAlignプロパティを次のように設定します。
その後TDBGridコンポーネントを置き、Alignプロパティを次のように設定します。
| コンポーネント | Alignプロパティ | 備考 |
|---|---|---|
| Panel2 | alTop | 見やすくするため色を変える |
| Panle3 | alBottom | 見やすくするため色を変える |
| DBGrid1 | alClient |

次にPanel1を選択し、
(デザイン画面では先ほど配置したコンポーネントが上にあるため、
左側のオブジェクトインスペクタまたは構造ペインから選択します。)
ツールパレット上のTSplitterをダブルクリックしてフォーム上に配置します。

SplitterのAlignプロパティを alTop に設定すると、横方向から縦方向に切り替わります。
Cursorプロパティ(マウスを当てた時のカーソル)も自動的にcrVSplitに設定されます。

プロジェクトを実行し、PanelとDBGridの間にあるSplitter上にマウスを置くとカーソルの形が変わります。
そのままドラッグすることで領域のサイズが変更されます。

Panel1上に同様にしてもうひとつSplitterコンポーネントを置くこともできます。
その場合はフォーム最下部のPanel3とDBGridの間に位置するように、Alignプロパティを alBottom に設定します。

(旧Tips Delphi/400 入門 Tips28「Splitterの使用方法」より)