PRB: ActiveX Control Painting Problems in Visual C++ 4.2 (154166)
The information in this article applies to:
- Microsoft Visual C++, 32-bit Enterprise Edition 4.2
- Microsoft Visual C++, 32-bit Enterprise Edition 5.0
- Microsoft Visual C++, 32-bit Professional Edition 4.2
- Microsoft Visual C++, 32-bit Professional Edition 5.0
This article was previously published under Q154166 SYMPTOMS
The ActiveX (OLE) Control may not paint correctly if it was built using
Visual C++ 4.2. Two known issues include controls not repainting when
resized, and control child windows not being repainted. Other painting
problems have been observed when subclassing native Windows controls.
CAUSE
This behavior is caused by changes to COleControl::OnPaint which add
optimizations to improve performance.
RESOLUTION
COleControl now includes a method, GetControlFlags, to control how painting
will be handled in an ActiveX control. Removing the fastBeginPaint flag
from the bit field returned by GetControlFlags will cause your ActiveX
control to use the same OnPaint code found in Visual C++ 4.1
STATUS
This behavior is by design.
REFERENCES
For an explanation of the GetControlFlags return values, see the
documentation in Books on Line.
Modification Type: | Major | Last Reviewed: | 12/1/2003 |
---|
Keywords: | kbNoUpdate kbprb KB154166 |
---|
|