次の方法で共有


DECLARE_WND_SUPERCLASS

クラスのパラメーターを指定できます。 このマクロを ATL ActiveX コントロールのコントロール クラスに入れます。

DECLARE_WND_SUPERCLASS( 
   WndClassName, 
   OrigWndClassName  
)

パラメーター

  • WndClassName
    [入力] OrigWndClassName をスーパークラス化するウィンドウ クラスの名前。 NULL の場合は、ATL がウィンドウ クラス名を生成します。

  • OrigWndClassName
    [入力] 既存のウィンドウ クラスの名前。

解説

既存のウィンドウ クラスをスーパークラス化するウィンドウ クラスの名前を指定できます。 CWndClassInfo は、スーパークラスの情報を管理します。

DECLARE_WND_SUPERCLASS は、次の静的関数を実装しています。

static CWndClassInfo& GetWndClassInfo();

既定では、CWindowImplDECLARE_WND_CLASS マクロを使用して新しいウィンドウ クラスに基づくウィンドウを作成します。 CWindowImpl の派生クラスに DECLARE_WND_SUPERCLASS マクロを指定すると、ウィンドウ クラスは既存のクラスに基づきます。ただし、ウィンドウ プロシージャは既存のクラスのものではなく独自のものを使用します。 このテクニックは、スーパークラス化と呼ばれています。

DECLARE_WND_CLASS マクロおよび DECLARE_WND_SUPERCLASS マクロを使用できるほかに、GetWndClassInfo 関数を独自の実装でオーバーライドすることもできます。

ATL でのウィンドウの使い方の詳細については、「ATL ウィンドウ クラス」を参照してください。

必要条件

**ヘッダー:**atlwin.h

参照

その他の技術情報

ウィンドウ クラスに関するマクロ

ATL マクロ