CBitmap bitmap1;
bitmap1.LoadBitmap(IDB_HEU); //这个IDB_BITMAP1要自己添加
CBrush brush1;
brush1.CreatePatternBrush(&bitmap1);
CBrush* pOldBrush1 = dc.SelectObject(&brush1);
dc.Rectangle(0,0,400,400); // 这些参数可以调整图片添加位置和大小
dc.SelectObject(pOldBrush1);
使用windowsMFC在onpaint()函数里添加的 结果导致导致原来的东西都被覆盖了。。有没有变成将背景的透明度提高或是其他的变成底层的方法。
bitmap1.LoadBitmap(IDB_HEU); //这个IDB_BITMAP1要自己添加
CBrush brush1;
brush1.CreatePatternBrush(&bitmap1);
CBrush* pOldBrush1 = dc.SelectObject(&brush1);
dc.Rectangle(0,0,400,400); // 这些参数可以调整图片添加位置和大小
dc.SelectObject(pOldBrush1);
使用windowsMFC在onpaint()函数里添加的 结果导致导致原来的东西都被覆盖了。。有没有变成将背景的透明度提高或是其他的变成底层的方法。
CDC ImageDC;
ImageDC.CreateCompatibleDC(&dc);
CBitmap ForeBMP;
ForeBMP.LoadBitmap(IDB_BITMAP1);
ForeBMP.GetBitmap(&bm);
CBitmap *pOldImageBMP=ImageDC.SelectObject(&ForeBMP);
TransparentBlt(dc.GetSafeHdc(),0,0,750,750,ImageDC.GetSafeHdc(),0,0,bm.bmWidth,bm.bmHeight,RGB(0xff,0xff,0xff));
ImageDC.SelectObject(pOldImageBMP);如果使用这段代码 透明颜色的RGB值是多少呢???
HDC hdcDest, // 目标DC
int nXOriginDest, // 目标X偏移
int nYOriginDest, // 目标Y偏移
int nWidthDest, // 目标宽度
int hHeightDest, // 目标高度
HDC hdcSrc, // 源DC
int nXOriginSrc, // 源X起点
int nYOriginSrc, // 源Y起点
int nWidthSrc, // 源宽度
int nHeightSrc, // 源高度
UINT crTransparent // 透明色,COLORREF类型
);