ステータス バーの作成方法
MFC には、ステータス バーを作成するためのクラスとして、CStatusBar と CStatusBarCtrl (Windows コモン コントロール API をラップしたもの) の 2 つが用意されています。 CStatusBar
は、ステータス バー コモン コントロールのすべての機能を提供します。メニューやツール バーと自動的に連携し、必要なコモン コントロールの設定と構造を開発者に代わって行います。ただし、最終的な実行可能ファイルのサイズは、CStatusBarCtrl
を使用して作成した場合よりも大きくなるのが普通です。
通常、実行可能ファイルは、CStatusBarCtrl
で作成した方がサイズが小さくなります。ステータス バーを MFC のアーキテクチャに統合する意図がなければ、CStatusBarCtrl
の方が好まれます。 CStatusBarCtrl
を使用し、なおかつ MFC アーキテクチャにステータス バーを統合することを検討している場合は、ステータス バー コントロールの操作を MFC に伝達するために、特別な注意が必要となります。 この通信は難しくはありませんが、CStatusBar
を使用する場合には不要な作業が別途必要になります。
Visual C++ には、ステータス バー コモン コントロールに関して 2 とおりの活用方法が用意されています。
CStatusBar
を使用してステータス バーを作成した後、CStatusBar::GetStatusBarCtrl を呼び出してCStatusBarCtrl
のメンバー関数にアクセスする。CStatusBarCtrl のコンストラクターを使用してステータス バーを作成する。
どちらの方法でも、ステータス バー コントロールのメンバー関数にアクセスできます。 CStatusBar::GetStatusBarCtrl
を呼び出したときは、CStatusBarCtrl
オブジェクトの参照が返されるので、両方のメンバー関数一式を使用できます。 CStatusBar
によるステータス バーのコンストラクトと作成については、CStatusBar に関するページを参照してください。