如何改变ToolBar的背景色 ?

3days 2006-09-26 01:37:52
如何改变ToolBar的背景色?用API哪个函数可以
...全文
252 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
vansoft 2006-09-27
  • 打赏
  • 举报
回复
代碼根本不管用,為這個,當初研究了好久。
junki 2006-09-27
  • 打赏
  • 举报
回复
支持一下.
wuxuetie 2006-09-27
  • 打赏
  • 举报
回复
模块中:
Option Explicit

Private 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

Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long

Private Declare Function SetClassLong Lib "user32" Alias "SetClassLongA" ( _
ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwnewlong As Long) As Long

Public Declare Function InvalidateRect Lib "user32" _
(ByVal hwnd As Long, lpRect As Long, ByVal bErase As Long) As Long

Public Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long

Public Declare Function CreatePatternBrush Lib "gdi32" (ByVal hBitmap As Long) As Long

Public Declare Function GetSysColorBrush Lib "user32" (ByVal nIndex As Long) As Long

Public Enum enuTBType
enuTB_FLAT = 1
enuTB_STANDARD = 2
End Enum

Private Const GCL_HBRBACKGROUND = (-10)

Public Sub ChangeTBBack(TB As Object, PNewBack As Long, pType As enuTBType)
Dim lTBWnd As Long

Select Case pType

Case enuTB_FLAT 'FLAT Button Style Toolbar
DeleteObject SetClassLong(TB.hwnd, GCL_HBRBACKGROUND, PNewBack) 'Its Flat, Apply directly to TB Hwnd

Case enuTB_STANDARD 'STANDARD Button Style Toolbar
lTBWnd = FindWindowEx(TB.hwnd, 0, "msvb_lib_toolbar", vbNullString) 'Standard, find Hwnd first
DeleteObject SetClassLong(lTBWnd, GCL_HBRBACKGROUND, PNewBack) 'Set new Back
End Select
End Sub
'=================================================================================================================
' If you want to use Win Common Control 5 Toolbars, use "ToolbarWindow32" instead of "msvb_lib_toolbar"
' Win Common Control 5 Toolbars can't be FLAT, they are always STANDARD, so use enuTB_STANDARD when you call this
'=================================================================================================================

VBForums网上有
3days 2006-09-27
  • 打赏
  • 举报
回复
已经弄好
VirtualDesktop 2006-09-27
  • 打赏
  • 举报
回复
SendMessage
iland9876543210 2006-09-26
  • 打赏
  • 举报
回复
帮顶

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧