这个是在百度发的图片http://hi.baidu.com/4534534535/album/%E6%89%8B%E6%9C%BA%E5%BC%80%E5%8F%91
下面是代码
HDC hdcMem;HBITMAP hBitmap;hdcMem = CreateCompatibleDC( hdc ); //创建第一个内存DChBitmap = CreateCompatibleBitmap( hdc, 230, 80 ); //创建缓冲位图,先把图画到这张空白位图上,小心!第一个参数是用目的 DC 才能创建彩色位图,否则只是单色!SelectObject( hdcMem, hBitmap );
RECT rt;
GetClientRect( hWnd, &rt );
FillRect( hdcMem, &rt, NULL ); //用背景色刷一下TCHAR ch5[] = _T("Hello,World!!!");
RECT rc1;
::GetClientRect(hWnd, &rc1);
DrawText(hdcMem, ch5, -1, &rc1, DT_SINGLELINE | DT_CENTER | DT_VCENTER);IImagingFactory *pImgFactory = NULL;
IImage *pImage = NULL;// 调用系统的com组件,返回值HRESULT pngFlag表示是否打开成功,
CoInitializeEx(NULL, COINIT_MULTITHREADED);
HRESULT pngFlag = SUCCEEDED(CoCreateInstance (guid1,NULL,CLSCTX_INPROC_SERVER,guid2,(void **)&pImgFactory));if (pngFlag) // 如果成功,则开始绘制png图像到HDC上
{
if(gflag==0)
{if(SUCCEEDED(pImgFactory->CreateImageFromFile(_T("\\Program Files\\FCity\\bj.png"),&pImage)))
{
RECT rc = {6,0,236,80};
pImage->Draw(hdcMem, &rc, NULL);
pImage->Release();
}
}
if(SUCCEEDED(pImgFactory->CreateImageFromFile(_T("\\My Documents\\briefcase\\weather.png"),&pImage)))
{
RECT rc = {6,0,81,55};
pImage->Draw(hdcMem, &rc, NULL);
pImage->Release();
}}
BitBlt(hdc,0,0,230,80,hdcMem,0,0,SRCCOPY);//把内存DC转送到客户区DC上
下面是代码
HDC hdcMem;HBITMAP hBitmap;hdcMem = CreateCompatibleDC( hdc ); //创建第一个内存DChBitmap = CreateCompatibleBitmap( hdc, 230, 80 ); //创建缓冲位图,先把图画到这张空白位图上,小心!第一个参数是用目的 DC 才能创建彩色位图,否则只是单色!SelectObject( hdcMem, hBitmap );
RECT rt;
GetClientRect( hWnd, &rt );
FillRect( hdcMem, &rt, NULL ); //用背景色刷一下TCHAR ch5[] = _T("Hello,World!!!");
RECT rc1;
::GetClientRect(hWnd, &rc1);
DrawText(hdcMem, ch5, -1, &rc1, DT_SINGLELINE | DT_CENTER | DT_VCENTER);IImagingFactory *pImgFactory = NULL;
IImage *pImage = NULL;// 调用系统的com组件,返回值HRESULT pngFlag表示是否打开成功,
CoInitializeEx(NULL, COINIT_MULTITHREADED);
HRESULT pngFlag = SUCCEEDED(CoCreateInstance (guid1,NULL,CLSCTX_INPROC_SERVER,guid2,(void **)&pImgFactory));if (pngFlag) // 如果成功,则开始绘制png图像到HDC上
{
if(gflag==0)
{if(SUCCEEDED(pImgFactory->CreateImageFromFile(_T("\\Program Files\\FCity\\bj.png"),&pImage)))
{
RECT rc = {6,0,236,80};
pImage->Draw(hdcMem, &rc, NULL);
pImage->Release();
}
}
if(SUCCEEDED(pImgFactory->CreateImageFromFile(_T("\\My Documents\\briefcase\\weather.png"),&pImage)))
{
RECT rc = {6,0,81,55};
pImage->Draw(hdcMem, &rc, NULL);
pImage->Release();
}}
BitBlt(hdc,0,0,230,80,hdcMem,0,0,SRCCOPY);//把内存DC转送到客户区DC上
解决方案 »
- TCP状态请教
- 搞了几年DELPHI ,现在学点VC,问个十分弱智的问题,显示非模态对话框
- 200分求个反走样去除锯齿画圆或者画弧线的算法
- 这是什么用法? #define BEGIN_INPUT( thisClass ) \
- C++ flash.ocx 如何动态调整界面的大小
- 打110求书,求inside COM,inside OLE(或者OLE 2即第2版),inside vc++6.0的书
- 十分奇怪的问题,想了半天,大家来瞧下,分不够再加
- 非常急,在线等! 两个字符串数组a和b,找出a有而b没有的元素数组c
- 关于字体的结构, 怎么会出问题?
- 如何在vc中调用远程的vb编写的dll组件?如果使用dcom,那莫组件是否需要在服务器和客户机上都注册?
- 如何通过ado确定数据库内某条数据是第几项
- 在VC2008中如何添加MSCOMM控件
你这里没有指定背景色
改一下,FillRect(hdcMem, &rt, RGB(255, 255, 255));改用白色刷一下