'===========================================================================
' Subject: CREATING FLAT TOOLBARS             Date: 03-13-98 (15:27)       
'  Author: Edward Blake                       Code: VBWIN                  
'  Origin: blakee@rcsn.nb.ca                Packet: VBWIN.ABC
'===========================================================================
' The following enables a flat toolbar under VB4 32-bit and VB5.
' 
'
'---- Add in a Standard Module
Declare Function FindWindowEx Lib "User32" Alias "FindWindowExA" _
  (ByVal hWndParent As Long, ByVal hWndChildWindow As Long, ByVal _
  lpClassName As String, ByVal lpsWindowName As String) As Long
Declare Function SendMessage Lib "User32" Alias "SendMessageA" _
  (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, _
  ByVal lParam As Any) As Long

Public Const TB_SETSTYLE = WM_USER + 56
Public Const TB_GETSTYLE = WM_USER + 57
Public Const TBSTYLE_FLAT = &H800

'----- Add in a form
Public Sub SetFlatBar(tb As Toolbar, bNewStyle As Boolean)
    Dim ltbStyle As Long, ltbHwnd As Long
    ltbHwnd = FindWindowEx(tb.hWnd, 0&, "ToolbarWindow32", vbNullString)
    ltbStyle = SendMessage(ltbHwnd, TB_GETSTYLE, 0&, 0&)
    If bNewStyle = True Then ltbStyle = ltbStyle Or TBSTYLE_FLAT _
      Else ltbStyle = ltbStyle And Not TBSTYLE_FLAT
    SendMessage ltbHwnd, TB_SETSTYLE, 0, ltbStyle
    tb.Refresh
End Sub

'----- Add this line in a Form_Load event Somewhere:
    SetFlatBar Toolbar1, True
