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 Window Classes and Window Procedure Superclassing 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