devxlogo

Customize Colors and Fonts for Statusbar Panels

Customize Colors and Fonts for Statusbar Panels

You can easily customize the fonts and colors in individual statusbar panels using a PictureBox control and an API call. Each statusbar panel can display a Picture object, so you can use an invisible PictureBox control with the background, font, and foreground elements you want and assign that PictureBox image to the Picture object of a statusbar panel. The Panel object exposes a Width property, but not a Height property. The SendMessage API function can retrieve that height. Place a PictureBox on a form and set its Name to picStatus, set AutoRedraw to True, and set Visible to False. Change the Font object of the statusbar to a Panel’s preferences before calling the PanelText procedure:

 Private Type RECT	Left As Long	Top As Long	Right As Long	Bottom As LongEnd TypePrivate Declare Function SendMessage Lib _	"user32" Alias "SendMessageA" (ByVal hWnd As _	Long, ByVal wMsg As Long, ByVal wParam As _	Long, lParam As Any) As LongPrivate Const WM_USER = &H400Private Const SB_GETRECT = (WM_USER + 10)Private Sub PanelText(sb As StatusBar, Index As _	Long, aText As String, bkColor As Long, _	fgColor As Long)	Dim R As RECT	SendMessage sb.hWnd, SB_GETRECT, Index - 1, R	With picPanel		Set .Font = sb.Font		.Move 0, 0, (R.Right - R.Left + 1) * _			Screen.TwipsPerPixelX, (R.Bottom - _			R.Top + 1) * Screen.TwipsPerPixelY		.BackColor = bkColor		.Cls		.ForeColor = fgColor		picPanel.Print aText		sb.Panels(Index).Text = aText		sb.Panels(Index).Picture = .Image	End WithEnd SubPrivate Sub Form_Load()	PanelText StatusBar1, 1, "Panel Message", _		QBColor(1), QBColor(15)End Sub
See also  How College Students Can Shape the Future of Tech Responsibility
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist