Re: Text window not displaying inside loop
"Joseph M. Newcomer" <newcomer@flounder.com> wrote in message
news:t27e83lgrms0imdnonin4bk275k40sklpd@4ax.com...
| But why? Why not just use an OnTimer handler, and it all comes free?
| joe
Does Windows/MFC call OnTimer while the loop is executed?
I think Tom's code helps with yeilding to other handlers.
| On Fri, 29 Jun 2007 15:18:47 -0700, "Tom Serface" <tom.nospam@camaswood.com> wrote:
|
| >oops hit wrong key... sorry:
| >
| >//
| >// Release main thread for background processing
| >//
| >void GiveTime()
| >{
| > // Idle until the screen redraws itself, et. al.
| > MSG msg;
| > while (::PeekMessage( &msg, NULL, 0, 0, PM_NOREMOVE ) ) {
| > if (!AfxGetThread()->PumpMessage( )) {
| > ::PostQuitMessage(0);
| > break;
| > }
| > }
| > // let MFC do its idle processing
| > LONG lIdle = 0;
| > while (AfxGetApp()->OnIdle(lIdle++ ))
| > ;
| >}
| >
| >So in your example you could do something like:
| >
| > CString Output;
| > while (CountDown--) {
| > Output.Empty();
| >
| > // extract figures and format into Output
| >
| >
| > m_DriveList.SetWindowText (Output); // display figures
| > GiveTime(); // Allow UI to update
| >}
| >
| >
| >Tom