ウィンドウの使用
CWindow クラスを使用すると、ウィンドウを使用できます。 CWindow
オブジェクトにウィンドウをアタッチすると、CWindow
メソッドを呼び出し、そのウィンドウを操作できます。 CWindow
には、CWindow
オブジェクトを HWND に変換する HWND 演算子も含まれます。 したがって、ウィンドウへのハンドルを必要とする関数に CWindow
オブジェクトを渡すことができます。 一時オブジェクトを作成せずに、CWindow
メソッド呼び出しと Win32 関数呼び出しを簡単に混在させることができます。
CWindow
には 2 つのデータ メンバー (ウィンドウ ハンドルと既定のディメンション) しかないため、コードのオーバーヘッドは発生しません。 また、CWindow
メソッドの多くは、対応する Win32 API 関数をラップするだけです。 CWindow
を使用すると、HWND メンバーが Win32 関数に自動的に渡されます。
CWindow
を直接使用するだけでなく、それから派生させてデータやコードをクラスに追加することもできます。 ATL 自体は CWindow
から 3 つのクラス、CWindowImpl、CDialogImpl、CContainedWindowT を派生させます。