テクニカル ノート 70: MFC のウィンドウ クラス名
更新 : 2007 年 11 月
メモ : |
---|
次のテクニカル ノートは、最初にオンライン ドキュメントの一部とされてから更新されていません。結果として、一部のプロシージャおよびトピックが最新でないか、不正になります。最新の情報について、オンライン ドキュメントのキーワードで関係のあるトピックを検索することをお勧めします。 |
MFC (Microsoft Foundation Class) のウィンドウでは、ウィンドウの特徴を反映して動的に作成されるクラス名が使用されます。アプリケーションで作成したフレーム ウィンドウ、ビュー、およびポップアップ ウィンドウのクラス名は、MFC によって動的に生成されます。MFC アプリケーションで作成したダイアログ ボックスとコントロールには、そのウィンドウ クラスの Windows 指定名が付与されます。
動的に付与されるクラス名を変更するには、独自のウィンドウ クラスを登録し、このクラスを PreCreateWindow のオーバーライドで使用します。MFC によって付与されるクラス名は、次のどちらかの形式に当てはまります。
Afx:%x:%x
Afx:%x:%x:%x:%x:%x
%x 文字の位置に WNDCLASS 構造体の 16 進データが入ります。MFC では、この手法により、同じ WNDCLASS 構造体を使用する複数の C++ クラスで、同じ登録済みウィンドウ クラスを共有できます。MFC アプリケーションには、大半の単純な Win32 アプリケーションとは異なり、WNDPROC が 1 つだけあります。したがって、WNDCLASS 構造体を簡単に共有でき、時間とメモリを節約できます。上の %x は、それぞれ次の値に置き換えられます。
WNDCLASS.hInstance
WNDCLASS.style
WNDCLASS.hCursor
WNDCLASS.hbrBackground
WNDCLASS.hIcon
最初の形式 (Afx:%x:%x) は、hCursor、hbrBackground、および hIcon がすべて NULL の場合に使用されます。