|
|
|
|
Forum
Please
Log In
to post a new message or reply to an existing one. If you are not registered, please
register.
NOTE: Some forums may be read-only if you are not currently subscribed to
our technical support services.
Subject |
Author |
Date |
|
Jeremy Richards
|
Sep 14, 2006 - 12:07 PM
|
I recently created an SDI (no doc/view) app in Visual Studio 2005. I added a couple of CExtControlBar and everything worked fine. However, recently, the application will hang whenever I attempt to resize a floating control bar or if I am using the Visual Studio 2005 theme, then it will hang whenever I undock the control bar(s). Note: it doesn’t hang until a second or two after undocking or resizing the control bar.
If I break the debugger, I can see that the code appears stuck in a loop inside void CExtPaintManager::stat_PassPaintMessages. Specifically it is looping in this section of code if( bPassPaint ) { while( ::PeekMessage( &msg, NULL, WM_PAINT, WM_PAINT, PM_NOREMOVE ) ) { if( ! ::GetMessage( &msg, NULL, WM_PAINT, WM_PAINT ) ) break; ::DispatchMessage( &msg ); } // while( ::PeekMessage( &msg, NULL, WM_PAINT, WM_PAINT, PM_NOREMOVE ) ) }
I was wondering if anyone had any ideas as to where to begin looking or whether I accidently did something horribly wrong. Thanks.
|
|
Jeremy Richards
|
Sep 15, 2006 - 11:33 AM
|
Fixed the problem. On my apps main child window, I had removed the line "CPaintDC dc(this);" from the paint function. Added that back and all is well.
|
|