每天一问,是不可能的,提问怎么能不给分呢,分数有限啊,每天去混分然后来提问~~
昨天弄懂了BITMAP和ICON的显示
CDC *pDC=GetDC();
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1);
CDC memDC;
memDC.CreateCompatibleDC(pDC);
memDC.SelectObject(&bitmap);
pDC->BitBlt(x,y,rect.Width(),rect.Height(),&memDC,0,0,SRCCOPY); HICON icon;
icon=AfxGetApp()->LoadIcon(IDI_ICON1);
DrawIcon(GetDC()->m_hDC,0,0,icon);
但一张位图做为对话框背景,然后要不停的刷新SetTimer(1,0,NULL);就会闪烁
另一张小的位图显示在背景之上,它遮挡的背景会是一个正方形,怎样让遮挡的背景只是位图的样子呢?使位图透明?
都怎样实现的呢~~
貌似图标是透明的-_-图标在位图之上能看到位图
昨天弄懂了BITMAP和ICON的显示
CDC *pDC=GetDC();
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1);
CDC memDC;
memDC.CreateCompatibleDC(pDC);
memDC.SelectObject(&bitmap);
pDC->BitBlt(x,y,rect.Width(),rect.Height(),&memDC,0,0,SRCCOPY); HICON icon;
icon=AfxGetApp()->LoadIcon(IDI_ICON1);
DrawIcon(GetDC()->m_hDC,0,0,icon);
但一张位图做为对话框背景,然后要不停的刷新SetTimer(1,0,NULL);就会闪烁
另一张小的位图显示在背景之上,它遮挡的背景会是一个正方形,怎样让遮挡的背景只是位图的样子呢?使位图透明?
都怎样实现的呢~~
貌似图标是透明的-_-图标在位图之上能看到位图
解决方案 »
- 如何获取鼠标点到显示器的具体位置上
- COM学习的菜鸟,狂晕中...
- 树型控件的使用
- 请问高手,如何用WNetAddConnection2连接XP的共享资源?
- 怎么样精确获取标志图像的中心位置,急,如何实现梯度幅值均值法获取亚像素级的边缘
- 改变控件位置的错误,急,在线等
- 正在做三维软件,请问有什么三维游戏做的很逼真的?比如爆炸、炮弹、火焰等,以前从未玩过这方面游戏。
- BSTR 怎么轉化到 CString 啊?
- 用vc写电子地图的方案讨论~~~~~~
- 我要学软件工程,清哪位大虾给我推荐一本好书(NULL)
- 有个bug,没有思路查它,CAsyncSocket,现象如下:
- mfc的control类别和value类别有什么区别吖
位图透明,可以用掩模,也可以用transparentblt。
CPaintDC dc(this);
CRect rc;
GetClientRect(&rc);
CBitmap bk;
bk.LoadBitmap(IDB_BK);
BITMAP bmp;
bk.GetBitmap(&bmp);
CDC memDC;
memDC.CreateCompatibleDC(&dc);
memDC.SelectObject(&bk);
dc.StretchBlt(0, 0, rc.Width(), rc.Height(), &memDC, 0, 0, bmp.bmWidth,
bmp.bmHeight, SRCCOPY);
CBitmap bmpLogo;
bmpLogo.LoadBitmap(IDB_LOGLOGO);
bmpLogo.GetBitmap(&bmp);
memDC.SelectObject(&bmpLogo);
::TransparentBlt(dc.m_hDC, 180, 20, bmp.bmWidth, bmp.bmHeight, memDC.m_hDC,
0, 0, bmp.bmWidth, bmp.bmHeight, RGB(214, 238, 255));
bmpLogo.LoadBitmap(IDB_LOGLOGO);
都是装载位图资源ID,上面是位图原有ID吧
那下面一个ID是什么?
但运行会出错,显示错误,然后Cannot execute program
IDB_BK 是背景图片bmp 格式的
IDB_LOGLOGO 是logo bmp 格式的是自己导入资源文件的。