FIX: CHtmlView Does Not Repaint Correctly in an AppWizard-Generated MDI Application (220021)
The information in this article applies to:
- Microsoft Visual C++, 32-bit Enterprise Edition 6.0, when used with:
- the operating system: Microsoft Windows NT
- the operating system: Microsoft Windows 95
- the operating system: Microsoft Windows 98
- Microsoft Visual C++, 32-bit Professional Edition 6.0, when used with:
- the operating system: Microsoft Windows NT
- the operating system: Microsoft Windows 95
- the operating system: Microsoft Windows 98
- Microsoft Visual C++, 32-bit Learning Edition 6.0, when used with:
- the operating system: Microsoft Windows NT
- the operating system: Microsoft Windows 95
- the operating system: Microsoft Windows 98
- The Microsoft Foundation Classes (MFC)
- Microsoft Windows 2000 Professional
- Microsoft Windows 2000 Server
- Microsoft Windows 2000 Advanced Server
This article was previously published under Q220021 SYMPTOMS
In an AppWizard-generated MDI application with more than two view windows overlapping each other, if the user clicks in the client area of the MDI frame window other than the view, such that the view loses the focus, and then clicks back in the client area of the view, the CHtmlView does not repaint correctly. However, if the user clicks the nonclient area of the view, the CHtmlView repaints correctly.
CAUSE
The WS_CLIPCHILDREN style is not set for CHtmlView, and therefore, on activating the view by clicking the view area, CHtmlView does not send a message to the embedded Web Browser control to repaint itself.
RESOLUTION
To work around this problem, in PreCreateWindow of CHtmlView, add the WS_CLIPCHILDREN style. Following is a code example: BOOL CSampleView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.style |= WS_CLIPCHILDREN;
return CHtmlView::PreCreateWindow(cs);
} STATUSMicrosoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.
This problem was corrected in Microsoft Visual C++ .NET.
REFERENCES
(c) Microsoft Corporation 1999, All Rights Reserved. Contributions by Vidyanand N. Rajpathak, Microsoft Corporation.
Modification Type: | Major | Last Reviewed: | 12/11/2003 |
---|
Keywords: | kbBug kbDocView kbfix kbNoUpdate KB220021 |
---|
|