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 に関するページを参照してください。