wxBusyInfo

This class makes it easy to tell your user that the program is temporarily busy. Just create a wxBusyInfo object on the stack, and within the current scope, a message window will be shown.

For example:

    wxBusyInfo wait("Please wait, working...");

    for (int i = 0; i < 100000; i++)
    {
        DoACalculation();
    }

It works by creating a window in the constructor, and deleting it in the destructor.

You may also want to call wxTheApp->Yield() to refresh the window periodically (in case it had been obscured by other windows, for example) like this:

    wxWindowDisabler disableAll;

    wxBusyInfo wait("Please wait, working...");

    for (int i = 0; i < 100000; i++)
    {
        DoACalculation();

        if ( !(i % 1000) )
            wxTheApp->Yield();
    }

but take care to not cause undesirable reentrancies when doing it (see wxApp::Yield() for more details). The simplest way to do it is to use wxWindowDisabler class as illustrated in the above example.

Derived from

None

Include files

<wx/busyinfo.h>



wxBusyInfo::wxBusyInfo



wxBusyInfo(const wxString& msg, wxWindow* parent = NULL)

Constructs a busy info window as child of parent and displays msg in it.

NB: If parent is not NULL you must ensure that it is not closed while the busy info is shown.



wxBusyInfo::~wxBusyInfo



~wxBusyInfo(void)

Hides and closes the window containing the information text.

ymasuda 平成17年11月19日