次の方法で共有


MFC ツール バーの実装

更新 : 2007 年 11 月

ツール バーは、コントロールのビットマップ イメージが配置されたコントロール バーです。これらのイメージは、プッシュ ボタン、チェック ボックス、オプション ボタンなどと同じように動作します。MFC には、ツール バーを管理するための CToolbar クラスが用意されています。

プログラマが行う設定によっては、ユーザーがツール バーをウィンドウの辺にドッキングしたり、アプリケーション ウィンドウ内の任意の場所にフローティング ツール バーとして表示したりできます。MFC では、開発環境におけるツール バーのようなカスタマイズできるツール バーはサポートされていません。

MFC では、ツール ヒントもサポートされています。ツール ヒントとは、ツール バーのボタンの用途を説明する小さなポップ アップ ウィンドウのことで、ボタンの上にマウス ポインタを置くと表示されます。既定では、ユーザーがツール バー ボタンを押すと、ステータスを示す文字列がある場合は、その文字列が表示されます。ステータス バーの "フライ バイ" 更新をアクティブにすると、ボタンの上にマウス ポインタを置くだけで、クリックしなくてもステータス バーにステータス文字列を表示できます。

9bh53ae3.alert_note(ja-jp,VS.90).gifメモ :

MFC Version 4.0 では、ツール バーおよびツールヒントは、以前の MFC 固有の実装ではなく、Windows 95 以降の機能を使用して実装されています。

下位互換性を維持するために、MFC では、古い形式で実装されているツール バーも COldToolBar クラスによってサポートされています。以前のバージョンのドキュメントは、CToolBar の下に記述されています。

プログラムで最初のツール バーを作成するには、アプリケーション ウィザードで [ツールバー] オプションを選択します。さらにツール バーを追加作成することもできます。

ここでは、以下の内容について紹介します。

  • ツール バー ボタン

  • ドッキング ツール バーとフローティング ツール バー

  • ツール バーとツールヒント

  • CToolBar クラスと CToolBarCtrl クラス

  • ツール バーのビットマップ

ツール バー ボタン

ツール バーのボタンは、メニューにある項目と似ています。いずれのユーザー インターフェイス オブジェクトもコマンドを生成します。プログラムはハンドラ関数を用意することでコマンドを処理します。ツール バーのボタンは、メニュー コマンドの代わりとなるユーザー インターフェイスとして用意されることが多いため、通常、その機能はメニュー コマンドの機能と重複しています。ツール バー ボタンとメニュー コマンドに同じ機能を持たせる場合は、両方に同じ ID を指定するだけで済みます。

ツール バーにボタンを配置し、プッシュ ボタン、チェック ボックス、オプション ボタンなどと同じように動作させることができます。詳細については、CToolBar クラスのトピックを参照してください。

ドッキング ツール バーとフローティング ツール バー

MFC ツール バーに対しては、以下のような操作ができます。

  • 親ウィンドウの 1 つの辺に固定したままにしておく。

  • ドラッグして、親ウィンドウの任意の辺に "ドッキング" させる (取り付ける)。

  • フレーム ウィンドウから切り離し、ミニフレーム ウィンドウの形でツール バーとして使用する。このツール バーは、ユーザーが任意の場所に移動できます。

  • ツール バーとして使用している場合にサイズを変更する。

詳細については、「ドッキング ツール バーとフローティング ツール バー」を参照してください。

ツール バーとツール ヒント

MFC ツール バーには "ツールヒント" を表示させることもできます。ツールヒントとは、ツール バー ボタンの用途を説明する短いテキストを表示する小さなポップアップ ウィンドウのことです。ユーザーがツール バー ボタンの上にマウス ポインタを置くと、ヒントを示すツール ヒントのウィンドウがポップアップ表示されます。詳細については、「ツール バーのツール ヒント」を参照してください。

CToolBar クラスと CToolBarCtrl クラス

アプリケーションのツール バーは、CToolBar クラスを通じて管理します。MFC Version 4.0 では、Windows 95 以降、および Windows NT Version 3.51 以降のバージョンで使用されているツール バー コモン コントロールを使用できるように、CToolBar が再実装されています。

この再実装により、それらのオペレーティング システムでサポートされているコントロールを MFC で利用できるため、ツール バー関連の MFC コードは少なくなりました。また、この再実装によって性能も向上しています。CToolBar のメンバ関数を使用してツール バーを操作できます。また、基になる CToolBarCtrl オブジェクトへの参照を取得し、そのメンバ関数を呼び出して、ツール バーをカスタマイズしたり機能を追加したりできます。

9bh53ae3.alert_note(ja-jp,VS.90).gifヒント :

以前の形式の CToolBar を実装するために多大な労力を費やしてきた場合は、そのまま以前の形式のツール バーを使用できます。「古い形式のツール バーの使用方法」を参照してください。

また、MFC の「標準のサンプル」の「DOCKTOOL サンプル : ドッキング可能ツール バー」も参照してください。

ツール バーのビットマップ

CToolBar オブジェクトは、いったん生成された後は、各ボタンのイメージを含む 1 つのビットマップを読み込んでツール バー イメージを作成します。アプリケーション ウィザードでは、Visual C++ ツール バー エディタを使用してカスタマイズできる標準ツール バー ビットマップが作成されます。

さらに詳しくは次のトピックをクリックしてください

参照

概念

ツール バー

参照

ツール バー エディタ