MFC でのステータス バーの実装
CStatusBar オブジェクトは、テキスト出力ペインの行を含むコントロール バーです。 出力ペインは、通常、メッセージ行およびステータス インジケーターとして使用されます。 たとえば、選択したメニュー コマンドを簡単に説明するメニュー ヘルプ メッセージ行や、SCROLL LOCK、NUM LOCK、その他のキーの状態を示すインジケーターなどがあります。
MFC バージョン 4.0 の状態バーは、ステータス バーのコモン コントロールをカプセル化するクラス CStatusBarCtrl を使用して実装されています。 下位互換性のため、MFC では古いステータス バーの実装が COldStatusBar
クラス内に保持されます。 以前のバージョンの MFC に関するドキュメントでは、CStatusBar
の中で COldStatusBar
について説明しています。
MFC 4.0 に新しく追加されたメンバー関数 CStatusBar::GetStatusBarCtrl を使用すると、ステータス バーのカスタマイズと追加機能に対する Windows コモン コントロールのサポートを利用できます。 CStatusBar
メンバー関数は、Windows コモン コントロールのほとんどの機能を提供します。ただし、 GetStatusBarCtrl
を呼び出す場合は、ステータス バーの特性をさらに多く設定できます。 GetStatusBarCtrl
を呼び出す場合は、CStatusBarCtrl
オブジェクトへの参照が返されます。 この参照を使用して、ステータス バー コントロールを操作できます。
次の図は、いくつかのインジケーターを表示するステータス バーを示しています。
ステータス バー
ツール バーと同様に、ステータス バー オブジェクトは親フレーム ウィンドウに埋め込まれ、フレーム ウィンドウの構築時に自動的に構築されます。 ステータス バーは、すべてのコントロール バーと同様に、親フレームが破棄されると自動的に破棄されます。