コントロール バー

"コントロールバー" は、ツールバー、ステータスバー、およびダイアログバーの一般的な名前です。 MFC クラス CToolBarCStatusBarCDialogBarCOleResizeBar および CReBar は、共通の機能を実装するクラス CControlBar から派生します。

コントロールバーは、ユーザーがオプションを選択したり、コマンドを実行したり、プログラム情報を取得したりできるコントロールの行を表示するウィンドウです。 コントロールバーの種類には、ツールバー、ダイアログ バー、ステータス バーなどがあります。

重要

MFC バージョン 4.0 以降では、ツールバー、ステータスバー、およびツールヒントは、MFC 固有の過去の実装ではなく、comctl32.dll に実装されているシステム機能を使用して実装されます。 MFC バージョン 6.0 CReBar では、comctl32.dll 機能をラップする機能も追加されました。

コントロールバーの型について簡単に紹介します。 詳細については、以下のリンクを参照してください。

コントロール バー

コントロールバーは、簡単なワンステップ コマンド アクションを提供することで、プログラムの使いやすさを大幅に向上させます。 クラス CControlBar は、すべてのツールバー、ステータスバー、およびダイアログ バーの共通機能を提供します。 CControlBar は、親フレーム ウィンドウにコントロール バーを配置するための機能を提供します。 通常、コントロール バーは親フレーム ウィンドウの子ウィンドウであるため、フレーム ウィンドウのクライアント ビューまたは MDI クライアントの "兄弟" になります。 コントロールバー オブジェクトは、親ウィンドウのクライアント領域の四角形に関する情報を使用して、それ自体を配置します。 次に、クライアント ビューまたは MDI クライアント ウィンドウがクライアント ウィンドウの残りの部分を埋めるように、親の残りのクライアント ウィンドウの四角形を変更します。

Note

コントロール バーのボタンに COMMAND または UPDATE_COMMAND_UI のハンドラーがない場合は、フレームワークによって自動的にボタンが無効になります。

ツールバー

ツールバーは、コマンドを実行するビットマップ ボタンの行を表示するコントロール バーです。 ツールバー ボタンを押す操作は、メニュー項目を選択するのと同じです。メニュー項目とツール バー ボタンの ID が同じであると、メニュー項目にマップされた同じハンドラーが呼び出されます。 ボタンは、プッシュ ボタン、オプション ボタン、またはチェック ボックスとして表示および動作するように構成できます。 通常、ツールバーはフレーム ウィンドウの上部に並べられていますが、MFC ツール バーは親ウィンドウの任意の辺に "ドッキング" できます。また、独自のミニフレーム ウィンドウでフローティングできます。 ツールバーは、"フローティング" することもできます。また、そのサイズを変更して、マウスでドラッグすることもできます。 ツール バーには、ユーザーがツール バーのボタンの上にマウスを移動したときにツール ヒントが表示されることもあります。 ツール ヒントは、ボタンの目的を簡単に説明する小さなポップアップ ウィンドウです。

Note

MFC バージョン4.0 では、クラス CToolBar は Windows ツールバー コモン コントロールを使用します。 CToolBar には CToolBarCtrl が含まれています。 ただし、以前のツールバーは引き続きサポートされます。 記事「ツールバー」を参照してください。

ステータス バー

ステータス バーは、テキスト出力ペイン、または "インジケーター" を含むコントロール バーです。出力ペインは、通常、メッセージ行として、また状態インジケーターとして使用されます。 メッセージ行の例には、MFC アプリケーション ウィザードによって作成された既定のステータスバーの左端のウィンドウで選択したメニューまたはツールバー コマンドを簡単に説明するコマンド ヘルプ メッセージ行が含まれています。 ステータス インジケーターの例には、スクロール ロック、NUMLOCK、およびその他のキーが含まれます。 通常、ステータス バーはフレームウィンドウの下部に合わせて調整されます。 クラス CStatusBar とクラス CStatusBarCtrlを参照してください。

ダイアログ バー

ダイアログ バーは、ダイアログ テンプレート リソースに基づくコントロール バーで、モードレス ダイアログ ボックスの機能を備えています。 ダイアログ バーには、Windows、カスタム、または ActiveX コントロールを含めることができます。 ダイアログ ボックスと同様に、ユーザーはコントロールの中でタブを使用できます。 ダイアログ バーは、フレーム ウィンドウの上、下、左、または右に配置でき、独自のフレーム ウィンドウでフローティングすることもできます。 クラス CDialogBarを参照してください。

Rebar

Rebarは、Rebar コントロールのドッキング、レイアウト、状態、および永続化に関する情報を提供するコントロール バーです。 Rebar オブジェクトには、さまざまな子ウィンドウを含めることができます。通常は、エディット ボックス、ツールバー、リスト ボックスなどの他のコントロールが含まれます。 Rebar オブジェクトは、指定されたビットマップ上に子ウィンドウを表示できます。 グリップ バーをクリックまたはドラッグすると、自動または手動でサイズを変更できます。 クラス CReBar を参照してください。

関連項目

ユーザー インターフェイス要素