回 帖 发 新 帖 刷新版面

主题:客户区背景问题!

为什么我把窗口客户区刷成黑色之后,输入文本后就又成了白底黑字了?

     

回复列表 (共6个回复)

沙发

你在哪里刷的????最好说出你的具体实现过程.这不是什么商业秘密.

板凳

这样的:
     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 楼

什么问题啊?
输入焦点我是这样处理的
case WM_SETFOUS:
     return 0;

4 楼

需要重画窗口,在case WM_KEYDOW的最后调用invalidate函数试试.

5 楼

输入文字时,再刷新客户区。

6 楼

用SetBkColor()设置文字的背景

我来回复

您尚未登录,请登录后再回复。点此登录或注册