首先该文本框为只读,且白色背景,同时在右下角添加一个北京图片。
代码如下:HBRUSH CChaterDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: Change any attributes of the DC here
if(pWnd->GetDlgCtrlID() == IDC_RECV_EDIT)
{
pDC->SetBkMode(TRANSPARENT);

CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1);

CDC dccompatible;
dccompatible.CreateCompatibleDC(pDC);
dccompatible.SelectObject(&bitmap);
CRect rect;
((CEdit*)GetDlgItem(IDC_RECV_EDIT))->GetRect(&rect);
pDC->BitBlt(385,140,rect.Width(),rect.Height(),&dccompatible,0,0,SRCCOPY); return m_brush; // 白色背景
} // TODO: Return a different brush if the default is not desired
return hbr;
}而遇到的问题是,当文本发生滚动时,背景图片也会有上下的摆动,同时,滚动时也会使文本框内的文字发生重叠。
请问这是为何?