怎么把图片往一个椭圆形里面填充呢? 图片是重复的一些形状。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 简单阿,把椭圆先当做一个矩形,将图片填入,然后将椭圆区域转换为CRgn对象,调用SetClipRgn设置裁剪区就可以了。 CreatePatternBrushCreateDIBPatternBrush 先设置好图片画刷,然后画椭圆就可以了。 CBitmap bm; bm.LoadBitmap(IDR_MAINFRAME); // Create a pattern brush from the bitmap. CBrush brush; brush.CreatePatternBrush(&bm); // Select the brush into a device context, and draw. CBrush* pOldBrush = (CBrush*)pDC->SelectObject(&brush); pDC->Ellipse(CRect(50, 50, 200, 200)); // Restore the original brush. pDC->SelectObject(pOldBrush); pDC->BeginPath();pDC->Ellipse();pDC->EndPath();pDC->SelectClipPath();pDC->BitBlt(); 聪明,用BeginPath()和 EndPath() , 在中间画个椭圆然后和图片做与操作 在CFromView类上创建了一个Button,然后刷新整个屏幕,Button会闪,怎么解决。 Edit控件接受十六进制 关于宏的语法问题,看不懂啊 怎么改变文件的创建时间VC++ help! CScrollView 缩放尺寸Size改变的问题 两个头文件可以互相#include吗? 如何隐藏 CListCtrl 中的一个列? 关于键盘消息,在线着急 请问如何写逆波兰式?举个例子 怎样获取HTTP网页上的一张图片 基于HTTP下载文件的问题!! 谁能给我解释一下打印机的逻辑坐标和物理坐标是什么意思?它们的关系是什么以及如何转化?
CreateDIBPatternBrush
bm.LoadBitmap(IDR_MAINFRAME);
// Create a pattern brush from the bitmap.
CBrush brush;
brush.CreatePatternBrush(&bm);
// Select the brush into a device context, and draw.
CBrush* pOldBrush = (CBrush*)pDC->SelectObject(&brush);
pDC->Ellipse(CRect(50, 50, 200, 200));
// Restore the original brush.
pDC->SelectObject(pOldBrush);
pDC->Ellipse();
pDC->EndPath();
pDC->SelectClipPath();
pDC->BitBlt();