Search
Module:
Directory

   Desktop Functions:

   Smart Device Functions:


Show Recent Changes
Subscribe (RSS)
Misc. Pages
Comments
FAQ
Helpful Tools
Playground
Suggested Reading
Website TODO List
Download Visual Studio Add-In

WindowStyles (Enums)
 
.
Summary
Defines the possible window style flags in Microsoft's API. These flags can be OR'd together to make more complex styles.

C# Definition:

  /// <summary>
  /// Window Styles.
  /// The following styles can be specified wherever a window style is required. After the control has been created, these styles cannot be modified, except as noted.
  /// </summary>
  [Flags]
  enum WindowStyles : uint
  {
    /// <summary>
    /// Creates an overlapped window. An overlapped window usually has a caption and a border.
    /// </summary>
    WS_OVERLAPPED = 0x00000000,

    /// <summary>
    /// Creates a pop-up window. Cannot be used with the <see cref="WS_CHILD"/> style.
    /// </summary>
    WS_POPUP = 0x80000000,

    /// <summary>
    /// Creates a child window. Cannot be used with the <see cref="WS_POPUP"/> style.
    /// </summary>
    WS_CHILD = 0x40000000,

    /// <summary>
    /// Creates a window that is initially minimized. For use with the <see cref="WS_OVERLAPPED"/> style only.
    /// </summary>
    WS_MINIMIZE = 0x20000000,

    /// <summary>
    /// Creates a window that is initially visible.
    /// </summary>
    WS_VISIBLE = 0x10000000,

    /// <summary>
    /// Creates a window that is initially disabled.
    /// </summary>
    WS_DISABLED = 0x08000000,

    /// <summary>
    /// Clips child windows relative to each other; that is, when a particular child window receives a paint message, the WS_CLIPSIBLINGS style clips all other overlapped child windows out of the region of the child window to be updated. (If WS_CLIPSIBLINGS is not given and child windows overlap, when you draw within the client area of a child window, it is possible to draw within the client area of a neighboring child window.) For use with the <see cref="WS_CHILD"/> style only.
    /// </summary>
    WS_CLIPSIBLINGS = 0x04000000,

    /// <summary>
    /// Excludes the area occupied by child windows when you draw within the parent window.
    /// Used when you create the parent window.
    /// </summary>
    WS_CLIPCHILDREN = 0x02000000,

    /// <summary>
    /// Creates a window of maximum size.
    /// </summary>
    WS_MAXIMIZE = 0x01000000,

    /// <summary>
    /// Creates a window that has a border.
    /// </summary>
    WS_BORDER = 0x00800000,

    /// <summary>
    /// Creates a window with a double border but no title.
    /// </summary>
    WS_DLGFRAME = 0x00400000,

    /// <summary>
    /// Creates a window that has a vertical scroll bar.
    /// </summary>
    WS_VSCROLL = 0x00200000,

    /// <summary>
    /// Creates a window that has a horizontal scroll bar.
    /// </summary>
    WS_HSCROLL = 0x00100000,

    /// <summary>
    /// Creates a window that has a Control-menu box in its title bar. Used only for windows with title bars.
    /// </summary>
    WS_SYSMENU = 0x00080000,

    /// <summary>
    /// Creates a window with a thick frame that can be used to size the window.
    /// </summary>
    WS_THICKFRAME = 0x00040000,

    /// <summary>
    /// Specifies the first control of a group of controls in which the user can move from one control to the next with the arrow keys. All controls defined with the WS_GROUP style FALSE after the first control belong to the same group. The next control with the WS_GROUP style starts the next group (that is, one group ends where the next begins).
    /// </summary>
    WS_GROUP = 0x00020000,

    /// <summary>
    /// Specifies one of any number of controls through which the user can move by using the TAB key. The TAB key moves the user to the next control specified by the WS_TABSTOP style.
    /// </summary>
    WS_TABSTOP = 0x00010000,

    /// <summary>
    /// Creates a window that has a Minimize button.
    /// </summary>
    WS_MINIMIZEBOX = 0x00020000,

    /// <summary>
    /// Creates a window that has a Maximize button.
    /// </summary>
    WS_MAXIMIZEBOX = 0x00010000,

    /// <summary>
    /// Creates a window that has a title bar (implies the <see cref="WS_BORDER"/> style).
    /// Cannot be used with the <see cref="WS_DLGFRAME"/> style.
    /// </summary>
    WS_CAPTION = WS_BORDER | WS_DLGFRAME,

    /// <summary>
    /// Creates an overlapped window. An overlapped window has a title bar and a border. Same as the <see cref="WS_OVERLAPPED"/> style.
    /// </summary>
    WS_TILED = WS_OVERLAPPED,

    /// <summary>
    /// Creates a window that is initially minimized. Same as the <see cref="WS_MINIMIZE"/> style.
    /// </summary>
    WS_ICONIC = WS_MINIMIZE,

    /// <summary>
    /// Creates a window that has a sizing border. Same as the <see cref="WS_THICKFRAME"/> style.
    /// </summary>
    WS_SIZEBOX = WS_THICKFRAME,

    /// <summary>
    /// Creates an overlapped window with the <see cref="WS_OVERLAPPED"/>, <see cref="WS_CAPTION"/>, <see cref="WS_SYSMENU"/>, <see cref="WS_THICKFRAME"/>, <see cref="WS_MINIMIZEBOX"/>, and <see cref="WS_MAXIMIZEBOX"/> styles. Same as the <see cref="WS_OVERLAPPEDWINDOW"/> style.
    /// </summary>
    WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW,

    /// <summary>
    /// Creates an overlapped window with the <see cref="WS_OVERLAPPED"/>, <see cref="WS_CAPTION"/>, <see cref="WS_SYSMENU"/>, <see cref="WS_THICKFRAME"/>, <see cref="WS_MINIMIZEBOX"/>, and <see cref="WS_MAXIMIZEBOX"/> styles.
    /// </summary>
    WS_OVERLAPPEDWINDOW = WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX,

    /// <summary>
    /// Creates a pop-up window with the <see cref="WS_BORDER"/>, <see cref="WS_POPUP"/>, and <see cref="WS_SYSMENU"/> styles. The WS_CAPTION style must be combined with the <see cref="WS_POPUPWINDOW"/> style to make the Control menu visible.
    /// </summary>
    WS_POPUPWINDOW = WS_POPUP | WS_BORDER | WS_SYSMENU,

    /// <summary>
    /// Same as the <see cref="WS_CHILD"/> style.
    /// </summary>
    WS_CHILDWINDOW = WS_CHILD
  }

VB.NET Definition:

''' <summary>
''' Window Styles.
''' The following styles can be specified wherever a window style is required. After the control has been created, these styles cannot be modified, except as noted.
''' </summary>
<Flags> _
Enum WindowStyles As UInteger
    ''' <summary>
    ''' Creates an overlapped window. An overlapped window usually has a caption and a border.
    ''' </summary>
    WS_OVERLAPPED = &H0

    ''' <summary>
    ''' Creates a pop-up window. Cannot be used with the <see cref="WS_CHILD"/> style.
    ''' </summary>
    WS_POPUP = &H80000000UI

    ''' <summary>
    ''' Creates a child window. Cannot be used with the <see cref="WS_POPUP"/> style.
    ''' </summary>
    WS_CHILD = &H40000000

    ''' <summary>
    ''' Creates a window that is initially minimized. For use with the <see cref="WS_OVERLAPPED"/> style only.
    ''' </summary>
    WS_MINIMIZE = &H20000000

    ''' <summary>
    ''' Creates a window that is initially visible.
    ''' </summary>
    WS_VISIBLE = &H10000000

    ''' <summary>
    ''' Creates a window that is initially disabled.
    ''' </summary>
    WS_DISABLED = &H8000000

    ''' <summary>
    ''' Clips child windows relative to each other; that is, when a particular child window receives a paint message, the WS_CLIPSIBLINGS style clips all other overlapped child windows out of the region of the child window to be updated. (If WS_CLIPSIBLINGS is not given and child windows overlap, when you draw within the client area of a child window, it is possible to draw within the client area of a neighboring child window.) For use with the <see cref="WS_CHILD"/> style only.
    ''' </summary>
    WS_CLIPSIBLINGS = &H4000000

    ''' <summary>
    ''' Excludes the area occupied by child windows when you draw within the parent window.
    ''' Used when you create the parent window.
    ''' </summary>
    WS_CLIPCHILDREN = &H2000000

    ''' <summary>
    ''' Creates a window of maximum size.
    ''' </summary>
    WS_MAXIMIZE = &H1000000

    ''' <summary>
    ''' Creates a window that has a border.
    ''' </summary>
    WS_BORDER = &H800000

    ''' <summary>
    ''' Creates a window with a double border but no title.
    ''' </summary>
    WS_DLGFRAME = &H400000

    ''' <summary>
    ''' Creates a window that has a vertical scroll bar.
    ''' </summary>
    WS_VSCROLL = &H200000

    ''' <summary>
    ''' Creates a window that has a horizontal scroll bar.
    ''' </summary>
    WS_HSCROLL = &H100000

    ''' <summary>
    ''' Creates a window that has a Control-menu box in its title bar. Used only for windows with title bars.
    ''' </summary>
    WS_SYSMENU = &H80000

    ''' <summary>
    ''' Creates a window with a thick frame that can be used to size the window.
    ''' </summary>
    WS_THICKFRAME = &H40000

    ''' <summary>
    ''' Specifies the first control of a group of controls in which the user can move from one control to the next with the arrow keys. All controls defined with the WS_GROUP style FALSE after the first control belong to the same group. The next control with the WS_GROUP style starts the next group (that is, one group ends where the next begins).
    ''' </summary>
    WS_GROUP = &H20000

    ''' <summary>
    ''' Specifies one of any number of controls through which the user can move by using the TAB key. The TAB key moves the user to the next control specified by the WS_TABSTOP style.
    ''' </summary>
    WS_TABSTOP = &H10000

    ''' <summary>
    ''' Creates a window that has a Minimize button.
    ''' </summary>
    WS_MINIMIZEBOX = &H20000

    ''' <summary>
    ''' Creates a window that has a Maximize button.
    ''' </summary>
    WS_MAXIMIZEBOX = &H10000

    ''' <summary>
    ''' Creates a window that has a title bar (implies the <see cref="WS_BORDER"/> style).
    ''' Cannot be used with the <see cref="WS_DLGFRAME"/> style.
    ''' </summary>
    WS_CAPTION = WS_BORDER Or WS_DLGFRAME

    ''' <summary>
    ''' Creates an overlapped window. An overlapped window has a title bar and a border. Same as the <see cref="WS_OVERLAPPED"/> style.
    ''' </summary>
    WS_TILED = WS_OVERLAPPED

    ''' <summary>
    ''' Creates a window that is initially minimized. Same as the <see cref="WS_MINIMIZE"/> style.
    ''' </summary>
    WS_ICONIC = WS_MINIMIZE

    ''' <summary>
    ''' Creates a window that has a sizing border. Same as the <see cref="WS_THICKFRAME"/> style.
    ''' </summary>
    WS_SIZEBOX = WS_THICKFRAME

    ''' <summary>
    ''' Creates an overlapped window with the <see cref="WS_OVERLAPPED"/>, <see cref="WS_CAPTION"/>, <see cref="WS_SYSMENU"/>, <see cref="WS_THICKFRAME"/>, <see cref="WS_MINIMIZEBOX"/>, and <see cref="WS_MAXIMIZEBOX"/> styles. Same as the <see cref="WS_OVERLAPPEDWINDOW"/> style.
    ''' </summary>
    WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW

    ''' <summary>
    ''' Creates an overlapped window with the <see cref="WS_OVERLAPPED"/>, <see cref="WS_CAPTION"/>, <see cref="WS_SYSMENU"/>, <see cref="WS_THICKFRAME"/>, <see cref="WS_MINIMIZEBOX"/>, and <see cref="WS_MAXIMIZEBOX"/> styles.
    ''' </summary>
    WS_OVERLAPPEDWINDOW = WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_THICKFRAME Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX

    ''' <summary>
    ''' Creates a pop-up window with the <see cref="WS_BORDER"/>, <see cref="WS_POPUP"/>, and <see cref="WS_SYSMENU"/> styles. The WS_CAPTION style must be combined with the <see cref="WS_POPUPWINDOW"/> style to make the Control menu visible.
    ''' </summary>
    WS_POPUPWINDOW = WS_POPUP Or WS_BORDER Or WS_SYSMENU

    ''' <summary>
    ''' Same as the <see cref="WS_CHILD"/> style.
    ''' </summary>
    WS_CHILDWINDOW = WS_CHILD
End Enum

Notes:

For extended window styles, see WindowStylesEx.

Documentation
 

Please edit this page!

Do you have...

  • helpful tips?
  • corrections to the existing content?
  • additional languages you want to include?

Select "Edit This Page" on the right hand toolbar and edit it!

 
Access PInvoke.net directly from VS:
Terms of Use
Find References
Show Printable Version
Revisions