设为首页 加入收藏

TOP

MFC 添加背景图片并让控件背景透明
2014-11-23 19:05:47 】 浏览:6750
Tags:MFC 添加 背景图片 控件 背景 透明

/*添加背景图片*/
BOOL CTOOLDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CDialog::OnEraseBkgnd(pDC);
HBITMAP m_hBitmap;
HDC m_hBkDC;
m_hBitmap = ::LoadBitmap(::GetModuleHandle(NULL),MAKEINTRESOURCE(IDB_BITMAP2));
m_hBkDC = ::CreateCompatibleDC(pDC-> m_hDC);
if(m_hBitmap && m_hBkDC)
{
::SelectObject(m_hBkDC,m_hBitmap);
::StretchBlt(pDC-> m_hDC,0,0,700,610,m_hBkDC,0,0,700,610,SRCCOPY);
::DeleteObject(m_hBitmap);
::DeleteDC(m_hBkDC);
}

return TRUE;
}

/*设置控件背景透明*/
HBRUSH CTOOLDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);

if(nCtlColor == CTLCOLOR_STATIC )
{
pDC->SetBkMode(TRANSPARENT);//设置背景透明
pDC->SetTextColor(RGB(255,255,0));//设置字体为黄色
return (HBRUSH)::GetStockObject(NULL_BRUSH);
}

// TODO: 如果默认的不是所需画笔,则返回另一个画笔
return hbr;
}

实现效果如下图所示:

\
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇wmi 获取当前登录用户名 下一篇VC++编译错误信息

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目