CWinTraits Class

This class provides a method for standardizing the styles used when creating a window object.

template <
   DWORD t_dwStyle = 0,
   DWORD t_dwExStyle = 0
>
class CWinTraits

Parameters

  • t_dwStyle
    Default standard window styles.

  • t_dwExStyle
    Default extended window styles.

Remarks

This window traits class provides a simple method for standardizing the styles used for the creation of an ATL window object. Use a specialization of this class as a template parameter to CWindowImpl or another of ATL's window classes to specify the default standard and extended styles used for instances of that window class.

Use this template when you want to provide default window styles that will be used only when no other styles are specified in the call to CWindowImpl::Create.

ATL provides three predefined specializations of this template for commonly used combinations of window styles:

  • CControlWinTraits
    Designed for a standard control window. The following standard styles are used: WS_CHILD, WS_VISIBLE, WS_CLIPCHILDREN, and WS_CLIPSIBLINGS. There are no extended styles.

  • CFrameWinTraits
    Designed for a standard frame window. The standard styles used include: WS_OVERLAPPEDWINDOW, WS_CLIPCHILDREN, and WS_CLIPSIBLINGS. The extended styles used include: WS_EX_APPWINDOW and WS_EX_WINDOWEDGE.

  • CMDIChildWinTraits
    Designed for a standard MDI child window. The standard styles used include: WS_OVERLAPPEDWINDOW, WS_CHILD, WS_VISIBLE, WS_CLIPCHILDREN, and WS_CLIPSIBLINGS. The extended styles used include: WS_EX_MDICHILD.

If you want to ensure that certain styles are set for all instances of the window class while permitting other styles to be set on a per-instance basis, use CWinTraitsOR instead.

Requirements

Header: atlwin.h

See Also

Concepts

CWinTraits Members

ATL Class Overview

Understanding Window Traits