Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C++ Windows MFC
I have a MFC tabbed MDI application in which the tabbed child window types are CEditView, CRichEditView and CView. I've noticed that when I switch between them (click the top of the tab to make that window the active window) they repaint the client area, as expected, but the CEditView windows flicker .. and I can see they are repainting twice (at least) for some reason. The CView and CRichEditView windows only repaint once.
 
Even if the CEditView window is already the active tab, if I click the top of the window, it gets redrawn twice ... with a flicker.
 
Since this redraw/flicker is annoying - does anyone have an idea why it would redraw more than once?
 
Thx,
Posted 22-Dec-12 13:05pm
Comments
Nelek at 22-Dec-12 18:56pm
   
I had a similar problem a while ago, in my case was because I was calling the Invalidate and UpdateWindow in more places than the strictly needed. It is worth to have a look.
 
Have you tried with the debugger and step into the code in that window?

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

Good idea Nelek.
 
I put a breakpoint on every Invalidate and UpdateWindow in the app ... and alas it did not hit any of those.
 
It seems it is not being triggered by my code explicitly.
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 381
1 Sergey Alexandrovich Kryukov 265
2 Praneet Nadkar 237
3 Marcin Kozub 225
4 /\jmot 189
0 OriginalGriff 8,284
1 Sergey Alexandrovich Kryukov 7,407
2 DamithSL 5,614
3 Maciej Los 4,989
4 Manas Bhardwaj 4,986


Advertise | Privacy | Mobile
Web02 | 2.8.1411023.1 | Last Updated 22 Dec 2012
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100