qq1412198766
cheng_f
采纳率100%
2017-05-19 12:00 阅读 1.4k
已采纳

mfc控件 richtextbox设置背景图片和图片透明化的实现

最近在做一个小说编辑器,要实现一个给richtextbox添加背景图片并且图片透明化的功能。
在网上搜索了很多资料,说是要给richtextbox添加子类并且处理控件的EraseBkgnd消息,于是写了如下代码:
BOOL CRichText::OnEraseBkgnd(CDC* pDC)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CBitmap bmp;
CDC bmpdc;
BITMAP b;
CRect rect;
GetClientRect(rect);
bmp.LoadBitmap(IDB_BITMAPBG);
bmp.GetBitmap(&b);
bmpdc.CreateCompatibleDC(pDC);
bmpdc.SelectObject(bmp);

pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&bmpdc,0,0,b.bmWidth,b.bmHeight,SRCCOPY);

//return CWnd::OnEraseBkgnd(pDC);
return true;

}

发现并没有实现,而且一点改变都没有。不知道有没有高手实现过这个功能的?可以先实现添加背景图片的功能,透明化的问题再处理也可以。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    qq1412198766 cheng_f 2017-07-08 00:22

    看来richtextbox是不能设置背景图片的,只能使用其他方案了

    点赞 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2017-05-19 16:33
    点赞 1 评论 复制链接分享
  • qq_22990551 qq_22990551 2019-11-18 16:02

    想问一下MFC里怎么使用RichTextBox控件啊,我用的是VS2015,但是在工具箱的”windows窗体“一栏RichTextBox选项是灰色不可选状态。

    点赞 评论 复制链接分享

相关推荐