老大啊,还是那个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,急待解决,麻烦你啦,谢谢 展开
{
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,急待解决,麻烦你啦,谢谢 展开
1个回答
展开全部
刚刚看到。
试试这个,这个没有问题。
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;
}
更多追问追答
追问
编辑框的滚动条一拉,里面的字符乱码,?
追答
上面的这个也是?我这边好好的,没有任何问题啊!!!我这边我自己试了。
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询