
用一个变量保存你要设置的动态数字,在OnPaint中绘制完图片后再绘制这个文本;
用一个Static控件,在你变更Static控件的时候需要刷新按钮区域
我有GDI+代码的,可以访问我的博客和下载资源,来知道如何进行PNG图片的装载和描绘。例子是用WTL写的,可以用在MFC上面,有些细节你转换成MFC的就可以了。
博客:http://blog.csdn.net/renstarone/article/details/9089835
工程文件:http://download.csdn.net/detail/renstarone/5773661
你可以使用MFC的CImage类,该类的头文件是atlimage.h
下面是示例代码:
CDC *pDC = GetDC()CImage Image
Image.Load(strPath)
if (Image.IsNull())
{
MessageBox(_T("没加载成功"))
return -1
}
if (Image.GetBPP() == 32) //确认该图像包含Alpha通道
{
int i
int j
for (i = 0 i < Image.GetWidth() i++)
{
for (j = 0 j < Image.GetHeight() j++)
{
byte *pByte = (byte *)Image.GetPixelAddress(i, j)
pByte[0] = pByte[0] * pByte[3] / 255
pByte[1] = pByte[1] * pByte[3] / 255
pByte[2] = pByte[2] * pByte[3] / 255
}
}
}
Image.Draw(pDC->m_hDC, 0, 0)
Image.Destroy()
ReleaseDC(pDC)
注意使用CImage,对于带alpha通道数据的图片要特别处理一下,上面的示例中,双循环体就是做的这个事情,你可以参考。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)