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)
Posted: 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
Admin Group Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
Post Options
Thanks(0)
|
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)
|
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)
|
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)
|
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)
|
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)
|
My sample don't work properly on v11.2.0.
|
|
Oleg
Admin Group Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
Post Options
Thanks(0)
|
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)
|
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)
|
and main frame, and windows in views too...
|
|
Oleg
Admin Group Joined: 21 May 2003 Location: United States Status: Offline Points: 11234 |
Post Options
Thanks(0)
|
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)
|
Блин, 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 |