![]()  | 
 
Pane paint problem during expand/collapse | 
 
    Post Reply  
   | 
  
| Author | |
   
   RonISAC  
   
   Groupie  
   Joined: 22 December 2006 Location: United States Status: Offline Points: 11  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Topic: Pane paint problem during expand/collapsePosted: 09 October 2007 at 4:53pm  | 
 
| 
   
    
   I am having problems with windows behind my application being allowed to write over my MDI app mainframe and panes during the expansion and collapse of panes.
 
   
  There is apparantly a window of vunerability during the expand/collapse process that prevent the MDI frame and some open panes from redrawing themselves.  The problem does not correct until I make the pane at the bottom of the frame the selected pane or resize the window etc. Refer to the image below. 
I am using v10.3. 
Thankful for any suggestions.  Here is an example showing VS bleeding through during pane expand/collapse: 
 | 
 |
![]()  | 
 |
   
   Oleg  
   
   Senior Member  
   Joined: 21 May 2003 Location: United States Status: Offline Points: 11234  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 10 October 2007 at 1:29am | 
 
| 
   
    
   Hello,
 
   
  Can you try reproduce it with one of our samples ? 
    | 
 |
| 
   
     
     Oleg, Support Team 
   
  CODEJOCK SOFTWARE SOLUTIONS  | 
 |
![]()  | 
 |
   
   RonISAC  
   
   Groupie  
   Joined: 22 December 2006 Location: United States Status: Offline Points: 11  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 10 October 2007 at 9:47am | 
 
| 
   
    
   I can see a similiar, but not identical, result by openning the GUI_VisualStudio7_vc71 sample application and execute it (debug) in front of VS with the VS Output window behind the same corner of the frame (lower right).  In this case, each time I open the side tab window on the left, it causes the painting of a miss aligned segment of the bottom pane border and then leaves it that way until the bottom pane is selected.  Each time the tab window on the left is openned, another miss aligned segment of the lower pane border is written above the last in the area over the VS Output window.
 
   
  I use the Output window as a test case as VS constantly writes to this window during mouse moves etc.  Other applications with constantly written windows would probably show the behavior when placed behind the application frame. 
This behavior is also seen when I compile a released version of my appl and run it on other machines.  The machines I have used are using XP Pro OS. 
Thanks, Ron Follmer 
 | 
 |
![]()  | 
 |
   
   Jimor Marlow  
   
   Groupie  
   Joined: 03 June 2007 Location: Russian Federation Status: Offline Points: 30  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 05 November 2007 at 1:35pm | 
 
| 
   
    
   I've got the same problem. To reproduce it you have to have at least two hidden panes, then activate the first one and quckly the second. And you can see some "noise" on the panes contents. I think issue in animation engine. The pane's content wasn't repainted after all. If you force pane to invalidate all seems ok. 
    
   
   | 
 |
![]()  | 
 |
   
   Jimor Marlow  
   
   Groupie  
   Joined: 03 June 2007 Location: Russian Federation Status: Offline Points: 30  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 05 November 2007 at 1:42pm | 
 
| 
   
    
   20071105_133824_TestDock.zip
 
   
  It's the sample. Hide all panes to the left side. Then click on Properties and Options quickly.  
    | 
 |
![]()  | 
 |
   
   RonISAC  
   
   Groupie  
   Joined: 22 December 2006 Location: United States Status: Offline Points: 11  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 05 November 2007 at 2:51pm | 
 
| 
   
    
   Jimor,
 
   
  I have since upgraded to v11.2 of the library.  This has made the problem go away for me so far.  Using the same test I used before, the problem does not repeat. 
RonISAC 
 | 
 |
![]()  | 
 |
   
   Jimor Marlow  
   
   Groupie  
   Joined: 03 June 2007 Location: Russian Federation Status: Offline Points: 30  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 05 November 2007 at 3:00pm | 
 
| 
   
    
   My sample don't work properly on v11.2.0.
    
   
   | 
 |
![]()  | 
 |
   
   Oleg  
   
   Senior Member  
   Joined: 21 May 2003 Location: United States Status: Offline Points: 11234  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 05 November 2007 at 3:24pm | 
 
| 
   
    
   Hello,
 
   
  You need add clip styles for all your views/splitters 
m_wndSplitter.ModifyStyle(0, WS_CLIPCHILDREN|WS_CLIPSIBLINGS); 
etc. 
    | 
 |
| 
   
     
     Oleg, Support Team 
   
  CODEJOCK SOFTWARE SOLUTIONS  | 
 |
![]()  | 
 |
   
   Jimor Marlow  
   
   Groupie  
   Joined: 03 June 2007 Location: Russian Federation Status: Offline Points: 30  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 05 November 2007 at 4:03pm | 
 
| 
   
    
   I have no splitter and view has WS_CLIPCHILDREN|WS_CLIPSIBLINGS styles.
    
   
   | 
 |
![]()  | 
 |
   
   Jimor Marlow  
   
   Groupie  
   Joined: 03 June 2007 Location: Russian Federation Status: Offline Points: 30  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 05 November 2007 at 4:06pm | 
 
| 
   
    
   and main frame, and windows in views too...
    
   
   | 
 |
![]()  | 
 |
   
   Oleg  
   
   Senior Member  
   Joined: 21 May 2003 Location: United States Status: Offline Points: 11234  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 06 November 2007 at 1:44am | 
 
| 
   
    
   In attached sample replace
 
   
  BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/, CCreateContext* pContext){ m_wndSplitter.Create(this,2, 2, // TODO: adjust the number of rows, columns CSize(10, 10), // TODO: adjust the minimum pane size pContext); m_wndSplitter.ModifyStyle(0, WS_CLIPSIBLINGS | WS_CLIPCHILDREN); return TRUE;} 
 and it will work.  | 
 |
| 
   
     
     Oleg, Support Team 
   
  CODEJOCK SOFTWARE SOLUTIONS  | 
 |
![]()  | 
 |
   
   Jimor Marlow  
   
   Groupie  
   Joined: 03 June 2007 Location: Russian Federation Status: Offline Points: 30  | 
  
   
      Post Options
    
        Thanks(0)
      Quote   Reply
   
     Posted: 06 November 2007 at 1:57pm | 
 
| 
   
    
   Блин, you right! Thanx a lot, my fault. 
    
   
   | 
 |
![]()  | 
 |
    Post Reply  
   | 
  |
|       
  
  Tweet   	
    | 
 
| Forum Jump | Forum Permissions  ![]() You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum  |