Projects

Find all our projects in development below.
All source code is GNU General Public License (GPL)

Window Spy

Browsing WndStyleMod.bas (5.20 KB)

Attribute VB_Name = "WndStyleMod"

Option Explicit

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Private Const GWL_EXSTYLE = (-20)
Private Const GWL_STYLE = (-16)

Public Enum modWndStyleConstants
    WS_BORDER = &H800000
    WS_CAPTION = &HC00000
    WS_CHILD = &H40000000
    WS_CHILDWINDOW = &H40000000
    WS_CLIPCHILDREN = &H2000000
    WS_CLIPSIBLINGS = &H4000000
    WS_DISABLED = &H8000000
    WS_DLGFRAME = &H400000
    WS_GROUP = &H20000
    WS_HSCROLL = &H100000
    WS_ICONIC = &H20000000
    WS_MAXIMIZE = &H1000000
    WS_MAXIMIZEBOX = &H10000
    WS_MINIMIZE = &H20000000
    WS_MINIMIZEBOX = &H20000
    WS_OVERLAPPED = &H0
    WS_OVERLAPPEDWINDOW = &HCF0000
    WS_POPUP = &H80000000
    WS_POPUPWINDOW = &H80880000
    WS_SIZEBOX = &H40000
    WS_SYSMENU = &H80000
    WS_TABSTOP = &H10000
    WS_THICKFRAME = &H40000
    WS_TILED = &H0
    WS_TILEDWINDOW = &HCF0000
    WS_VISIBLE = &H10000000
    WS_VSCROLL = &H200000
    BS_3STATE = &H5
    BS_AUTO3STATE = &H6
    BS_AUTOCHECKBOX = &H3
    BS_AUTORADIOBOX = &H9
    BS_BITMAP = &H80
    BS_BOTTOM = &H800
    BS_CENTER = &H300
    BS_CHECKBOX = &H2
    BS_DEFPUSHBUTTON = &H1
    BS_FLAT = &H8000
    BS_GROUPBOX = &H7
    BS_ICON = &H40
    BS_LEFT = &H100
    BS_LEFTTEXT = &H20
    BS_MULTILINE = &H2000
    BS_NOTIFY = &H4000
    BS_OWNERDRAW = &HB
    BS_PUSHBUTTON = &H0
    BS_PUSHLIKE = &H1000
    BS_RADIOBUTTON = &H4
    BS_RIGHT = &H200
    BS_RIGHTBUTTON = &H20
    BS_TEXT = &H0
    BS_TOP = &H400
    BS_USERBUTTON = &H8
    BS_VCENTER = &HC00
    CBS_AUTOHSCROLL = &H40
    CBS_DISABLENOSCROLL = &H800
    CBS_DROPDOWN = &H2
    CBS_DROPDOWNLIST = &H3
    CBS_HASSTRINGS = &H200
    CBS_LOWERCASE = &H4000
    CBS_NOINTEGRALHEIGHT = &H400
    CBS_OEMCONVERT = &H80
    CBS_OWNERDRAWFIXED = &H10
    CBS_OWNERDRAWVARIABLE = &H20
    CBS_SIMPLE = &H1
    CBS_SORT = &H100
    CBS_UPPERCASE = &H2000
    ES_AUTOHSCROLL = &H80
    ES_AUTOVSCROLL = &H40
    ES_CENTER = &H1
    ES_LEFT = &H0
    ES_LOWERCASE = &H10
    ES_MULTILINE = &H4
    ES_NOHIDESEL = &H100
    ES_NUMBER = &H2000
    ES_OEMCONVERT = &H400
    ES_PASSWORD = &H20
    ES_READONLY = &H800
    ES_RIGHT = &H2
    ES_UPPERCASE = &H8
    ES_WANTRETURN = &H1000
    LBS_DISABLENOSCROLL = &H1000
    LBS_EXTENDEDSEL = &H800
    LBS_HASSTRINGS = &H40
    LBS_MULTICOLUMN = &H200
    LBS_MULTIPLESEL = &H8
    LBS_NODATA = &H2000
    LBS_NOINTEGRALHEIGHT = &H100
    LBS_NOREDRAW = &H4
    LBS_NOSEL = &H4000
    LBS_NOTIFY = &H1
    LBS_OWNERDRAWFIXED = &H10
    LBS_OWNERDRAWVARIABLE = &H20
    LBS_SORT = &H2
    LBS_STANDARD = &HA00006
    LBS_USETABSTOPS = &H80
    LBS_WANTKEYBOARDINPUT = &H400
    SBS_BOTTOMALIGN = &H4
    SBS_HORZ = &H0
    SBS_LEFTALIGN = &H2
    SBS_RIGHTALIGN = &H4
    SBS_SIZEBOX = &H8
    SBS_SIZEBOXBOTTOMRIGHTALIGN = &H4
    SBS_SIZEBOXTOPLEFTALIGN = &H2
    SBS_SIZEGRIP = &H10
    SBS_TOPALIGN = &H2
    SBS_VERT = &H1
    SS_BITMAP = &HE
    SS_BLACKFRAME = &H7
    SS_BLACKRECT = &H4
    SS_CENTER = &H1
    SS_CENTERIMAGE = &H200
    ' SS_ENDELLIPSIS = ???
    SS_ENHMETAFILE = &HF
    SS_ETCHEDFRAME = &H12
    SS_ETCHEDHORZ = &H10
    SS_ETCHEDVERT = &H11
    SS_GRAYFRAME = &H8
    SS_GRAYRECT = &H5
    SS_ICON = &H3
    SS_LEFT = &H0
    SS_LEFTNOWORDWRAP = &HC
    SS_NOPREFIX = &H80
    SS_NOTIFY = &H100
    SS_OWNERDRAW = &HD
    ' SS_PATHELLIPSIS = ???
    SS_REALSIZEIMAGE = &H800
    SS_RIGHT = &H2
    SS_RIGHTJUST = &H400
    SS_SIMPLE = &HB
    SS_SUNKEN = &H1000
    SS_WHITEFRAME = &H9
    SS_WHITERECT = &H6
    ' SS_WORDELLIPSIS = ???
End Enum

Public Enum modWndExStyleConstants
    WS_EX_ACCEPTFILES = &H10
    WS_EX_APPWINDOW = &H40000
    WS_EX_CLIENTEDGE = &H200
    WS_EX_CONTEXTHELP = &H400
    WS_EX_CONTROLPARENT = &H10000
    WS_EX_DLGMODALFRAME = &H1
    ' WS_EX_LAYERED = ???
    ' WS_EX_LAYOUTRTL = ???
    WS_EX_LEFT = &H0
    WS_EX_LEFTSCROLLBAR = &H4000
    WS_EX_LTRREADING = &H0
    WS_EX_MDICHILD = &H40
    ' WS_EX_NOACTIVATE = ???
    ' WS_EX_NOINHERITLAYOUT = ???
    WS_EX_NOPARENTNOTIFY = &H4
    WS_EX_OVERLAPPEDWINDOW = &H300
    WS_EX_PALETTEWINDOW = &H188
    WS_EX_RIGHT = &H1000
    WS_EX_RIGHTSCROLLBAR = &H0
    WS_EX_RTLREADING = &H2000
    WS_EX_STATICEDGE = &H20000
    WS_EX_TOOLWINDOW = &H80
    WS_EX_TOPMOST = &H8
    WS_EX_TRANSPARENT = &H20
    WS_EX_WINDOWEDGE = &H100
End Enum

Public Function GetWindowExStyle(hWnd As Long) As Long
    GetWindowExStyle = GetWindowLong(hWnd, GWL_EXSTYLE)
End Function

Public Function GetWindowStyle(hWnd As Long) As Long
    GetWindowStyle = GetWindowLong(hWnd, GWL_STYLE)
End Function

Public Function SetWindowExStyle(hWnd As Long, ExStyle As modWndExStyleConstants) As Long
    SetWindowExStyle = SetWindowLong(hWnd, GWL_EXSTYLE, ExStyle)
End Function

Public Function SetWindowStyle(hWnd As Long, Style As modWndStyleConstants) As Long
    SetWindowStyle = SetWindowLong(hWnd, GWL_STYLE, Style)
End Function


Download WndStyleMod.bas

Back to file list


Back to project page