#include </home/zeitlin/src/wx/github/interface/wx/busyinfo.h>
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.
以下に例を示します:
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.
Note that a wxBusyInfo is always built with the wxSTAY_ON_TOP
window style (see wxFrame window styles for more info).
Public Member Functions | |
wxBusyInfo (const wxString &msg, wxWindow *parent=NULL) | |
Constructs a busy info window as child of parent and displays msg in it. | |
virtual | ~wxBusyInfo () |
Hides and closes the window containing the information text. |
Constructs a busy info window as child of parent and displays msg in it.
virtual wxBusyInfo::~wxBusyInfo | ( | ) | [virtual] |
Hides and closes the window containing the information text.