CReBar とCReBarCtrl の比較

MFC には、Rebar を作成するためのクラスが 2 つ用意されています。CReBar と (Windows コモン コントロール API をラップする) CReBarCtrl です。 CReBar は、Rebar コモン コントロールの機能をすべて備えており、その必要な設定と構造の多くを開発者に代わって処理します。

CReBarCtrl は Win32 Rebar コントロールのラッパー クラスであるため、MFC アーキテクチャに Rebar を統合するつもりでなければ、実装は容易です。 CReBarCtrl を使用し、なおかつ MFC アーキテクチャに Rebar を統合することを検討している場合は、Rebar コントロールの操作を MFC に伝達するために、特別な注意が必要となります。 この通信は難しくはありませんが、CReBar を使用する場合には不要な作業が別途必要になります。

Visual C++ には、Rebar コモン コントロールに関して 2 とおりの活用方法が用意されています。

  • CReBar を使用して Rebar を作成し、CReBar::GetReBarCtrl を呼び出して CReBarCtrl のメンバー関数にアクセスする。

    Note

    CReBar::GetReBarCtrl は、Rebar オブジェクトの this ポインターをキャストするインライン メンバー関数です。 つまり実行時に、関数呼び出しに伴うオーバーヘッドはありません。

  • CReBarCtrl のコンストラクターを使用して Rebar を作成する。

どちらの方法でも、Rebar コントロールのメンバー関数にアクセスできます。 CReBar::GetReBarCtrl を呼び出したときは、CReBarCtrl オブジェクトの参照が返されるので、両方のメンバー関数一式を使用できます。 CReBar による Rebar のコンストラクトと作成については、CReBar に関するページを参照してください。

関連項目

CReBarCtrl の使い方
コントロール