使用WM_CTLCOLOREDIT 来设置,正常编辑框设置成功,只读的不变
强制获取只读编辑框句柄,用再获取它的hdc,强制setbkcolor,failed 。。
求解决之道。。SDK

解决方案 »

  1.   


        TControlCanvas* cc = new TControlCanvas;
        cc->Control = edt1;
        RECT r = cc->Control->ClientRect;
        cc->Brush->Color = clYellow;
        cc->FillRect(r);
        cc->Font->Color = clRed;
        cc->TextOutA(1,1,edt1->Text);
        delete cc;
      

  2.   

    MF啥C啊,MFC哪来的TControlCanvas对象和clYellow这些枚举
      

  3.   

    查不到TControlCanvas的结构,不知道怎么用唉这东西是个类啊。
    话说我上面说的两个方法为什么行不通,能解释一下吗?
      

  4.   

    最直接的方法是处理 WM_CTLCOLORSTATIC ,只读编辑框在这里处理
      

  5.   

    都只读了,可以继承CStatic自绘了。只读edit设置背景色,在OnCtlColor中是无效的,这个已经经过很多csdn高手验证过了
      

  6.   

    呵呵。。没学过MFC知道把它当作static的消息来处理就是了