老大啊,还是那个VC编辑框更改颜色的问题

if(pWnd->GetDlgCtrlID()==IDC_EDIT1)//假设你需要修改的编辑框的ID为IDC_EDIT1{CBrushbrush(RGB(255,255... if (pWnd->GetDlgCtrlID() == IDC_EDIT1) // 假设你需要修改的编辑框的ID为IDC_EDIT1
{
CBrush brush(RGB(255, 255, 255));// 构造白色刷子,RGB值控制颜色
CRect rcClient;
pWnd->GetClientRect(rcClient);
pDC->SetBkMode(TRANSPARENT);
pDC->SelectObject(&brush);
pDC->FillRect(&rcClient, &brush);
return brush;
/////////////////////
依你的意思,编译运行之后,是对的,但是一拉编辑框的滚动条,发现里面的字符消失了,用鼠标一拉复制一下,发现编辑框的背景颜色把字符遮住了,这是怎么回事,我用的是vc6.0,急待解决,麻烦你啦,谢谢
展开
 我来答
xu19951930
推荐于2016-09-29 · TA获得超过294个赞
知道小有建树答主
回答量:163
采纳率:0%
帮助的人:165万
展开全部

刚刚看到。

试试这个,这个没有问题。

HBRUSH CXXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
    HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);

    if (pWnd->GetDlgCtrlID() == IDC_EDIT1)
    {
        pDC->SetBkMode(TRANSPARENT);
        pDC->SetTextColor(RGB(0, 0, 0)); 
        HBRUSH   hBr = CreateSolidBrush(RGB(255, 255, 255));
        return   (HBRUSH)hBr;
    }
    return hbr;
}
更多追问追答
追问
编辑框的滚动条一拉,里面的字符乱码,?
追答
上面的这个也是?我这边好好的,没有任何问题啊!!!我这边我自己试了。
来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式