散分 急救~~ 自绘文本框 添加背景图片
功能实现:为文本编辑框 添加背景图片。
从CEdit继承,自绘了一个文本编辑框,问题是当文本框为多行时正常显示,当文本框为单行时,背景为黑色??
这是添加消息的代码:
HBRUSH UITextInput::CtlColor(CDC* pDC, UINT dfs)
{
// TODO: Change any attributes of the DC here
dfs;
// TODO: Return a non-NULL brush if the parent's handler should not be called
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
,我在OnEraseBkgnd中添加的背景图片
[解决办法]
你返回的画刷就是刷背景的
CBrush bkbrush;
CBitmap bk; //类成员变量
bk.LoadBitmap(IDB_BITMAPBK);
bkbrush.CreatePatternBrush(&bk);//在OnInitDialog里调用这2个
return bkbrush;//字OnCtrlColor里返回这个