Microsoft & .NETVisual C#Make A Flat Toolbar In VB5

Make A Flat Toolbar In VB5 content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

You just need to do as followings:

First: copy these code in your module

'Const .....
Public Const WM_USER = &H400
Public Const TB_SETSTYLE = WM_USER + 56
Public Const TB_GETSTYLE = WM_USER + 57
Public Const TBSTYLE_FLAT = &H800
Public Const TBSTYLE_TOOLTIPS = &H100
Public Const TBSTYLE_WRAPABLE = &H200
Public Const TBSTYLE_ALTDRAG = &H400
Public Const TBSTYLE_LIST = &H1000

Public Declare Function SendMessageLong Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
ByVal lParam As Long) As Long
Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA"_
(ByVal hWnd1 As Long, _
ByVal hWnd2 As Long, _
ByVal lpsz1 As String, _
ByVal lpsz2 As String) As Long

'A public sub in order to make a flat toolbar
'Enteries:tb(the name of your toolbar control)
'Return : no
Public Sub FlatBar(ByVal tb As Toolbar)
Dim style As Long
Dim hToolbar As Long
Dim r As Long
hToolbar = FindWindowEx(tb.hwnd, 0&, "ToolBarWindow32", vbNullString)
style = SendMessageLong(hToolbar, TB_GETSTYLE, 0&, 0&)
If style And TBSTYLE_FLAT Then
style = style Xor TBSTYLE_FLAT
Else: style = style Or TBSTYLE_FLAT
End If
r = SendMessageLong(hToolbar, TB_SETSTYLE, 0, style)
End Sub

Second: In your form put one Toolbar control(named MyTB) and one ImageList control,at the same time put some icons in bind Imagelist with Toolbar get a comm Toolbar.

Third: In your form Load event call sub FlatBar() like this : Call FlatBar(MyTB)

Fourth: Now Run your project to see what happen in you toolbar. is it Cool ?

Posted On: 30-Nov-1998

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Latest Posts

Related Stories