ダイアログ バー

ダイアログ バーとはツール バー、つまり、あらゆる種類のコントロールを格納できるコントロール バーの一種です。 モードレス ダイアログ ボックスの特性を備えているため、CDialogBar オブジェクトは、より強力なツール バーを提供します。

ツール バーと CDialogBar オブジェクトとの間には、いくつかの大きな違いがあります。 CDialogBar オブジェクトは、ダイアログテンプレート リソースから作成されます。ダイアログテンプレート リソースは、Visual C++ ダイアログ エディターを使用して作成でき、あらゆる種類の Windows コントロールを含むことができます。 ユーザーは、コントロールからコントロールへと Tab キーで移動できます。 また、アラインメント スタイルを指定することで、親フレーム ウィンドウの任意の部分に対してダイアログ バーの位置を合わせることができます。逆に、親のサイズが変更されても所定の位置にとどめるようにすることもできます。 次の図は、さまざまなコントロールを含んだダイアログ バーを示しています。

Example of a VC Dialog Bar.
ダイアログ バー

その他の点では、CDialogBar オブジェクトの操作は、モードレス ダイアログ ボックスのそれと似ています。 ダイアログ リソースの設計と作成には、ダイアログ エディターを使用します。

ダイアログ バーの特長の 1 つは、ボタン以外のコントロールを追加できることです。

独自のダイアログ クラスは CDialog から派生させるのが普通ですが、ダイアログ バーのためのクラスを独自に派生させるのは一般的ではありません。 ダイアログ バーはメイン ウィンドウに対する拡張機能であるため、ダイアログ バーのコントロール通知メッセージ (BN_CLICKEDEN_CHANGE など) はすべて、ダイアログ バーの親、つまりメイン ウィンドウに送信されます。

関連項目

ユーザー インターフェイス要素
サンプル