代码部分
CRect rect; GetClientRect(rect); pDC->SetMapMode(MM_ANISOTROPIC); pDC->SetWindowExt(rect.Width(), rect.Height()); pDC->SetViewportExt(rect.Width(), -rect.Height()); pDC->SetViewportOrg(rect.Width()/2, rect.Height()/2);CBitmap Bitmap;
Bitmap.LoadBitmap(IDB_INSTITUTE); CBrush Brush, *pOldBrush; Brush.CreatePatternBrush(&Bitmap); pOldBrush = pDC->SelectObject(&Brush);CPen NewPen, *pOldPen;
pOldPen = (CPen *)pDC->SelectStockObject(NULL_PEN);CPoint d1, tr, sp, ep;
d1 = CPoint(-400, -600), tr = CPoint(400, 200); sp = CPoint(400, 0), ep = CPoint(-400, 0); pDC->Pie(CRect(d1, tr), sp, ep); pDC->SelectObject(pOldBrush); NewPen.DeleteObject(); Bitmap.DeleteObject();d1 = CPoint(-80, -280), tr = CPoint(80, -120);
sp = CPoint(800, 200), ep = CPoint(-800, 200); pDC->Pie(CRect(d1, tr), sp, ep); pDC->SelectObject(pOldPen);上面看出,加载图片的过程是先创建位图对象,加载图片,把位图放到刷子里;其实就是让刷子成为一个有图的刷子,所以如果你的图片太小,那么可以想象,就是刷子不停的在图形内填充相同的图形。关于图片,可以的话尽量加载已经处理好的,不要对vc的图形编辑器抱太多期望,颜色超过256也没事,只是不能在vc的图形编辑器里打开,所以更不用说编辑了,程序跑的时候还是会显示出来。图片的格式注意,一定是.bmp的!!而且上面用到画笔也是透明画笔,在使用完后,要删除的删除,要换回默认的也不能忘。