Click here to Skip to main content
13,300,331 members (54,882 online)
Click here to Skip to main content
Add your own
alternative version


60 bookmarked
Posted 13 Mar 2002

CTaskProgressDialog: A dialog indicating operation progress for multiple tasks

, 17 Mar 2002
Rate this:
Please Sign up or sign in to vote.
Progress indicator for multi-tasks in a project

Please visit my homepage and the Forum for questions, suggestions, and bug reports.

Sample Image - TaskProgDlg.gif
Sample Image - TaskProgDlgHot.gif


Many of you have seen a kind of dialog showing multiple task installations for applications like Netscape and Explorer. A multi-task dialog can be summarized as a task area and a progress bar embedded in the dialog. The task area is a list of text strings showing multiple tasks to be performed. The progress bar indicates the percentage of task completed. It is quite common that image icons are associated with each text string to indicate the processing state of the task (See figure above). It is also common that many applications involve a series of lengthy operations which can be visually represented by the task dialog, e.g., Adobe Illustrator (AI) reads different files (binary AI native file and embedded image files) when opening .AI documents.

CTaskProgressDialog is implemented to visually represent those lengthy operations. It is modified from a progress bar dialog generated by Visual Studio. It behaves like a modaless dialog. If a user clicks on the Cancel button on the dialog during processing, the dialog will be dismissed without completion of the process.

How to use

Use of CTaskProgressDialog is fairly easy. Just following those steps below:

  • Declare a CTaskProgressDialog member variable in an appropriate class of your project;
  • Insert the dialog resource and source files (TaskProgressDlg.h, TaskProgressDlg.cpp) into your project;
  • Instantiate, initialize, and show the dialog;
  • Dimiss the dialog and do not forget to free the dialog memory;

If you are not sure on how to use the dialog, take a look at the demo project.

Please visit my homepage and the Forum for questions, suggestions, and bug reports.

Version History

  • v1.1 03-12-02
    • Change list view of list ctrl to report view
    • Selection (first picture) and Hot mode (second picture) are supported for indicating the current task being processed.
  • V1.0 03-12-02 First version

Any comments, questions, or bug report?


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


About the Author

United States United States
Yellowine is a fan of MFC. He has been programming for several years.

You may also be interested in...


Comments and Discussions

QuestionHow to add and call my own tasks? Pin
chritsche19-Mar-10 15:31
memberchritsche19-Mar-10 15:31 
General[Message Deleted] Pin
Danny Rodriguez27-Jan-08 10:16
memberDanny Rodriguez27-Jan-08 10:16 
[Message Deleted]
GeneralDTS Pin
Rashid Thadha15-Mar-02 1:44
memberRashid Thadha15-Mar-02 1:44 
GeneralRe: DTS Pin
Mario M.15-Mar-02 4:00
memberMario M.15-Mar-02 4:00 
GeneralRe: DTS Pin
yellowine15-Mar-02 6:06
memberyellowine15-Mar-02 6:06 
GeneralRe: DTS Pin
Mario M.15-Mar-02 7:29
memberMario M.15-Mar-02 7:29 
GeneralRe: DTS Pin
yellowine15-Mar-02 12:05
memberyellowine15-Mar-02 12:05 
GeneralRe: DTS Pin
Anonymous19-Mar-02 14:03
memberAnonymous19-Mar-02 14:03 

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

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

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.171207.1 | Last Updated 18 Mar 2002
Article Copyright 2002 by yellowine
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid