Share via


CWndClassInfo

class CWndClassInfo

CWndClassInfo manages the information of a window class. You typically use CWndClassInfo through one of three macros, DECLARE_WND_CLASS, DECLARE_WND_CLASS_EX, or DECLARE_WND_SUPERCLASS, as described in the following table:

Macro Description
DECLARE_WND_CLASS CWndClassInfo registers information for a new window class.
DECLARE_WND_CLASS_EX CWndClassInfo registers information for a new window class, including the class parameters.
DECLARE_WND_SUPERCLASS CWndClassInfo registers information for a window class that is based on an existing class but uses a different window procedure. This technique is called superclassing.

By default, CWindowImpl includes the DECLARE_WND_CLASS macro to create a window based on a new window class. DECLARE_WND_CLASS provides default styles and background color for the control. If you want to specify the style and background color yourself, derive your class from CWindowImpl and include the DECLARE_WND_CLASS_EX macro in your class definition.

If you want to create a window based on an existing window class, derive your class from CWindowImpl and include the DECLARE_WND_SUPERCLASS macro in your class definition. For example:

class CMyWindow : CComControl<CMyWindow>, ...
                // CComControl derives from CWindowImpl
{
public:
   // 1. The NULL parameter means ATL will generate a
   //    name for the superclass
   // 2. The "EDIT" parameter means the superclass is
   //    based on the standard Windows Edit box
   DECLARE_WND_SUPERCLASS(NULL, "EDIT")
   ...
};

For more information about window classes and superclassing, see and in the Win32 SDK.

For more information about using windows in ATL, see the article ATL Window Classes.

#include <atlwin.h>

Class Members

See Also   CComControl