一般THeaderControl
に、表形式データのヘッダーとして使用できます。もちろん、多くの場合、そのためにリスト ビューが使用されます。しかし、リスト ビューなどを使用して作成するのが容易ではない各列のさまざまなコンポーネントの風変わりなレイアウトの場合、または各列の完全に異なるレイアウトの場合でも、ヘッダー コントロールは便利です。必要な場所で柔軟性を提供するだけです。TPageControl
よりも柔軟な提供と比較してくださいTTabControl
。
そして、特定のニッチなケースについて: たとえば、計画グリッド コンポーネントの一部としてヘッダー コントロールを使用します。ヘッダー コントロールはデータ ソースを介してキャプションを取得し、ヘッダー セクションは列およびスクロール バーと同期しています。実際、これにはいくつかのコードが必要ですが、さまざまなイベントのデザインタイムを実装する場合よりも多くはありません。
TPlanGridHeader = class(TCustomHeaderControl)
private
FSectionWidth: Integer;
procedure SetSectionWidth(Value: Integer);
procedure WMMouseMove(var Message: TWMMouseMove); message WM_MOUSEMOVE;
protected
function CreateSection: THeaderSection; override;
procedure SectionResize(Section: THeaderSection); override;
procedure SectionTrack(Section: THeaderSection; Width: Integer;
State: TSectionTrackState); override;
property SectionWidth: Integer read FSectionWidth write SetSectionWidth;
public
procedure AddSection(const AText, AHint: String);
constructor Create(AOwner: TComponent); override;
end;