Click here to Skip to main content
Click here to Skip to main content

Taskbar Progressbar Control

, 3 Apr 2007
Rate this:
Please Sign up or sign in to vote.
How to put a progressbar control into the taskbar.

Introduction

This article describes how to put a progress bar control into the taskbar.

Sample screenshot

Sample screenshot

How does it work?

First, we need to create an instance of the progress control. The progress bar control will be automatically attached to the taskbar. At startup, the program searches for three specific HWnds. These are Shell_TrayWnd, ReBarWindow32 and TrayNotifyWnd. The program tasks, shortcut bar etc.. are all included into this window using the ReBarWindow32 class. ReBarWindow32 is directly placed beside the TrayNotifyWnd window. All we need to do now is to create the progress bar using the method Create but we don't add it to our main window, we add it to the taskbar. An important fact is, that the control needs its own message map, else you will get a 100% CPU usage due to the message handling when we click on the control in the taskbar.

Facts

  • The progress control is directly attached into the taskbar. When you have enabled the Auto Hide option of the Windows Taskbar, the control moves with it.
  • We need to renew the control when we:
    • add an icon into the tray notify bar.
    • change/move the taskbar from horizontal to vertical and vice versa.
    • * etc..
  • To renew the control, we need a timer at this time (I haven't found a kind of broadcast message yet).
  • Parent window of the control is the Shell_TrayWnd of the Taskbar.

Other classes used

  • CTextProgressCtrl by Chris Maunder.

Where does it work?

It's tested on:

  • WinXP
  • Win2000 Prof.
  • Win2003 Server

Use this program / source code at your own risk. The author of this program is not responsible for any damage on your or another computer caused by this program.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

Nautilus Master

Austria Austria
No Biography provided

Comments and Discussions

 
QuestionControl is transparent in Vista. How to make it non transparent? Pinmemberdima polyakov5-May-07 15:48 
AnswerRe: Control is transparent in Vista. How to make it non transparent? Pinmemberdima polyakov6-May-07 8:48 
Generaldisplay progress bar Pinmemberanu jaggi25-Apr-07 0:21 
GeneralUPDATE: TTaskbarContainer [modified] PinmemberNautilus Master31-Mar-07 10:03 
GeneralBug in NProgressBar.cpp with m_bCreated PinmemberPort233227-Feb-07 4:24 
GeneralRe: Bug in NProgressBar.cpp with m_bCreated PinmemberNautilus Master27-Feb-07 8:25 
Generalneed a C# version Pinmembergoldli24-Feb-07 16:16 
GeneralRe: need a C# version PinmemberNautilus Master2-Mar-07 8:43 
GeneralRe: need a C# version Pinmemberquin5815-Mar-10 21:13 
Generalseparate TaskBarHandling & ProgressCtrl PinmemberJimmyO17-Jan-07 15:01 
GeneralVersion 1.0.2 well uploaded [modified] PinmemberNautilus Master24-Jul-06 10:02 
GeneralRe: Version 1.0.2 well uploaded PinmemberDefenestration24-Jul-06 12:25 
QuestionNeed Soucre in VB net 2003 Pinmemberjur1sa21-Jul-06 17:50 
AnswerRe: Need Soucre in VB net 2003 PinmemberNautilus Master24-Jul-06 8:30 
GeneralProblem with double line TaskBar Pinmemberzerolan2220-Jul-06 2:19 
GeneralRe: Problem with double line TaskBar [modified] PinmemberNautilus Master21-Jul-06 7:54 
GeneralRe: Problem with double line TaskBar Pinmemberzerolan2224-Jul-06 2:51 
Generalwell done PinmemberNautilus Master24-Jul-06 10:04 
GeneralRe: well done Pinmemberzerolan2225-Jul-06 6:27 
GeneralThe application doesn't run correctly on windows2000 server PinmemberGavin Yuan13-Feb-06 21:46 
GeneralRe: The application doesn't run correctly on windows2000 server PinmemberNautilus Master28-Feb-06 0:39 
Generaladd exe demo :-) Pinmemberam0n_66629-Oct-05 23:45 
GeneralNeeds to be reworked and optimized further. PinmemberWREY29-Oct-05 20:26 
GeneralRe: Needs to be reworked and optimized further. PinmemberNautilus Master30-Oct-05 2:51 
GeneralUpdate v.1.0.1 PinmemberNautilus Master28-Oct-05 7:32 
QuestionC# Version? Pinmemberjgallen2324-Oct-05 11:21 
AnswerRe: C# Version? PinmemberNautilus Master25-Oct-05 7:38 
GeneralRe: C# Version? Pinmemberjgallen2330-Oct-05 15:14 
AnswerRe: C# Version? PinmemberP.J. van de Sande24-Jul-06 22:41 
GeneralRe: C# Version? Pinmemberjsamper15-Aug-06 13:07 
AnswerRe: C# Version? [modified] PinmemberP.J. van de Sande15-Aug-06 21:59 
QuestionRe: C# Version? Pinmembertrutchet23-Aug-06 5:56 
AnswerRe: C# Version? Pinmemberstephnagel24-Aug-06 5:54 
GeneralRe: C# Version? [modified] PinmemberNautilus Master26-Aug-06 8:05 
GeneralRe: C# Version? Pinmembertrutchet28-Aug-06 22:59 
GeneralRe: C# Version? Pinmembervl950t26-Sep-06 8:26 
GeneralUpdate 17.10.2005 PinmemberNautilus Master16-Oct-05 21:07 
GeneralRe: Update 17.10.2005 PinmemberThatsAlok17-Oct-05 19:45 
Generalthis code is terrible PinmemberAlejandroDG15-Oct-05 16:03 
GeneralCorrections well done PinmemberNautilus Master16-Oct-05 21:08 
GeneralNice demo really Pinmemberddmcr15-Oct-05 4:19 
GeneralRe: Nice demo really PinmemberNautilus Master15-Oct-05 4:58 
GeneralRe: Nice demo really Pinmemberddmcr15-Oct-05 23:21 
GeneralLooks promising... PinmemberThe_Mega_ZZTer14-Oct-05 19:14 
GeneralVersion 1.0 PinmemberNautilus Master14-Oct-05 13:19 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.141220.1 | Last Updated 3 Apr 2007
Article Copyright 2005 by Nautilus Master
Everything else Copyright © CodeProject, 1999-2014
Layout: fixed | fluid