龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

如何在应用程序状态条中加入Bitmap位图(2)

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
//BitmapStatusBar.cpp #if_MFC_VER$#@60;0x400 void CBitampStatusBar::DoPaint(CDC*pDC) { CRect rect; GetItemRect(1,rect);//得到pane的大小 pDC-$#@62;ExcludeClipRect(rect);//创建新的裁剪区域

//BitmapStatusBar.cpp

#if_MFC_VER$#@60;0x400

void CBitampStatusBar::DoPaint(CDC*pDC)

{

CRect rect;

GetItemRect(1,&rect);//得到pane的大小

pDC-$#@62;ExcludeClipRect(&rect);//创建新的裁剪区域

CStatusBar::DoPaint(pDC);//描绘状态条(status bar)的其余部分

CRgn paneRgn;

paneRgn.CreateRectRgnIndirect(rect);

pDC-$#@62;SelectClipRgn(&paneRgn);//选择裁剪区域

CBitmap pBitmap;

//加载位图,使用Import从文件加载资源,可以不受调色板限制

pBitmap.LoadBi p(IDB_BITMAP1);

//将当前位图放入兼容CDC

CDC SourceDC;

SourceDC.CreateCompatibleDC(NULL);//生成兼容的CDC

CBitmap*pOldBitmap=SourceDC.SelectObject(&pBitmap);//选择位图

pDC-$#@62;BitBlt(rect.left,rect.top,rect.Width(),rect.Height(),

&SourceDC,0,0,SRCCOPY);//BitBlt

SourceDC.SelectObject(pOldBitmap);//删除CDC中所选择的位图

pBitmap.DeleteObject();//删除位图

}

#else

精彩图集

赞助商链接