用c++ MFC 制作一个绘图软件!怎么填充图形 可以的话各位上代码!下面是我写的代码.只能全频填充,求指导
if(m_nDrawType==ID_DRAW_FILL){CBrush*pOldBrush;CBitmap*pOldBitmap;CBrushbrush;brush.C...
if(m_nDrawType==ID_DRAW_FILL)
{
CBrush* pOldBrush;
CBitmap* pOldBitmap;
CBrush brush;
brush.CreateSolidBrush(m_cFillColor);
pOldBrush=m_pMemDC->SelectObject(&brush);
pOldBitmap=m_pMemDC->SelectObject(m_pBitmap);
m_pMemDC->ExtFloodFill(point.x,point.y,m_pMemDC->GetPixel(point),FLOODFILLSURFACE);
Invalidate(FALSE);
m_pMemDC->SelectObject(pOldBrush);
m_pMemDC->SelectObject(pOldBitmap);
m_bDrawing=FALSE;
} 展开
{
CBrush* pOldBrush;
CBitmap* pOldBitmap;
CBrush brush;
brush.CreateSolidBrush(m_cFillColor);
pOldBrush=m_pMemDC->SelectObject(&brush);
pOldBitmap=m_pMemDC->SelectObject(m_pBitmap);
m_pMemDC->ExtFloodFill(point.x,point.y,m_pMemDC->GetPixel(point),FLOODFILLSURFACE);
Invalidate(FALSE);
m_pMemDC->SelectObject(pOldBrush);
m_pMemDC->SelectObject(pOldBitmap);
m_bDrawing=FALSE;
} 展开
2个回答
展开全部
CBrush* pOldBrush;
CBrush brush;
brush.CreateSolidBrush(m_cFillColor);//这个时候,刷子已经选好了,想填充什么图形,画就可以了
m_pMemDC->Rectangle(rect);//画一个矩形填充
m_pMemDC->SelectObject(pOldBrush);
CBrush brush;
brush.CreateSolidBrush(m_cFillColor);//这个时候,刷子已经选好了,想填充什么图形,画就可以了
m_pMemDC->Rectangle(rect);//画一个矩形填充
m_pMemDC->SelectObject(pOldBrush);
更多追问追答
追问
还是不对!给我说下你的邮箱...我把源码给你发过来你帮我看看好吗?帮帮忙了
追答
后面位图的代码注销掉再看
问题是,我不清楚你要填充一个什么。如果只是普通形状,不难,你可以自己多试试。
不明白可以百度hi我
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询