|
|
发表于 2003-6-17 21:53:18
|
显示全部楼层
是 Static 控件吧?
7 v+ G3 |/ p0 ^解决方案:
9 T3 G$ m$ q7 b3 J* M" J' y) h继承 CStatic 生成一个自己的类,如 CStaticEx 类,在其中的 OnPaint() (或相关事件)中加上4 @, {/ B5 |+ B; k, k6 b- F
//绘制父窗口部分区域的内容8 G9 j& B5 v' l# } H
CRect rect;$ Z# w/ J" d! I% R: J) Z% T; D( q
GetWindowRect(&rect);
2 C/ `2 ~7 H$ }2 LGetParent()->ScreenToClient(&rect);3 {3 s: E2 b& p
GetParent()->RedrawWindow(rect);. i9 E5 a2 f; Z* q8 y
//输出本控件自己的文本内容
' A2 B& A% S1 A! L' f. l8 b# sdc.SetBkMode(TRANSPARENT);) o# V# M$ d; C- n9 v+ g8 Q- {4 L
...
, Z" I1 T( s% t% i/ t还有 OnEraseBkgnd() 不调用默认的函数,直接 return TRUE,以防止重绘背景造成闪烁的感觉。
6 d* q! F$ {( X以上是大概的思路。
% S" D, ~, r2 B. R$ E, q |
|