void CpngShowDlg::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: 在此处添加消息处理程序代码
// 不为绘图消息调用 CDialog::OnPaint()
HDC hdc =dc.m_hDC;
if (hBmp==NULL)
{
hBmp = SHLoadImageFile(_T("//Program Files//Imaging//kfm_home.png"));
}
HDC hMemDc = CreateCompatibleDC(hdc);
RECT rc = { 0, 0, 110, 88};
HBITMAP OldBitmap;
OldBitmap = (HBITMAP)SelectObject(hMemDc,hBmp);
BLENDFUNCTION bf;
bf.BlendOp = AC_SRC_OVER;
bf.BlendFlags = 0 ;
bf.SourceConstantAlpha = 170;
bf.AlphaFormat = 0;
AlphaBlend(hdc, 20, 30, 64, 64, hMemDc , 0, 0, 64, 64, bf);
SelectObject(hMemDc,OldBitmap);
DeleteDC(hMemDc);
}
显示透明PNG图片
最新推荐文章于 2023-04-06 18:04:40 发布