主题:客户区背景问题!
xiaoming126
[专家分:60] 发布于 2006-05-09 17:05:00
为什么我把窗口客户区刷成黑色之后,输入文本后就又成了白底黑字了?
回复列表 (共6个回复)
沙发
aaronwang [专家分:16870] 发布于 2006-05-09 17:15:00
你在哪里刷的????最好说出你的具体实现过程.这不是什么商业秘密.
板凳
xiaoming126 [专家分:60] 发布于 2006-05-09 17:36:00
这样的:
case WM_PAINT :
hdc = BeginPaint (hDlg, &ps) ;
GetClientRect (hDlg, &rc) ;
hBrush = CreateSolidBrush ( RGB(0,0,0) ;
FillRect (hdc, &rc, hBrush) ;
EndPaint (hDlg, &ps) ;
DeleteObject (hBrush) ;
return 0 ;
.................
case WM_KEYDOW:
SetTextcolor(hdc,RGB(0,0,0));
SetBkMode(hdc,TRANSPARENT);
return 0;
3 楼
xiaoming126 [专家分:60] 发布于 2006-05-09 17:39:00
什么问题啊?
输入焦点我是这样处理的
case WM_SETFOUS:
return 0;
4 楼
fresher [专家分:730] 发布于 2006-05-26 23:18:00
需要重画窗口,在case WM_KEYDOW的最后调用invalidate函数试试.
5 楼
linshubiao [专家分:930] 发布于 2006-06-06 08:12:00
输入文字时,再刷新客户区。
6 楼
luchuncheng [专家分:390] 发布于 2006-06-07 12:18:00
用SetBkColor()设置文字的背景
我来回复