怎么用VC设置绘图笔,然后以已知点为中心画一个矩形,并对这个矩形填色
前面已经定义坐标为(i,q)COLOREFcolor;intnDC=pDC->SaveDC();//存储DC的原始状态,便于恢复CPenPen;Pen.CreatePen...
前面已经定义坐标为(i,q)
COLOREF color;
int nDC = pDC->SaveDC();//存储DC的原始状态,便于恢复
CPen Pen;
Pen.CreatePen(PS_SOLID,1,color);
CPen* oldPen = pDC->SelectObject(&Pen);//选择笔redPen,并将返回的指针赋值给oldPen,便于恢复笔的状态
int nLeftRect,nTopRect,nRightRect,nBottomRect;//画矩形
nLeftRect=q-1;
nTopRect=i+1;
nRightRect=q+1;
nBottomRect=i-1;
pDC->Rectangle(nLeftRect,nTopRect,nRightRect,nBottomRect);
pDC->SelectObject(oldPen);
DeleteObject(&Pen);
pDC->RestoreDC(nDC);//恢复DC的原始状态 展开
COLOREF color;
int nDC = pDC->SaveDC();//存储DC的原始状态,便于恢复
CPen Pen;
Pen.CreatePen(PS_SOLID,1,color);
CPen* oldPen = pDC->SelectObject(&Pen);//选择笔redPen,并将返回的指针赋值给oldPen,便于恢复笔的状态
int nLeftRect,nTopRect,nRightRect,nBottomRect;//画矩形
nLeftRect=q-1;
nTopRect=i+1;
nRightRect=q+1;
nBottomRect=i-1;
pDC->Rectangle(nLeftRect,nTopRect,nRightRect,nBottomRect);
pDC->SelectObject(oldPen);
DeleteObject(&Pen);
pDC->RestoreDC(nDC);//恢复DC的原始状态 展开
1个回答
展开全部
你的代码基本正确,只是少了刷子
// create and select a solid blue brush
CBrush brushBlue(RGB(0, 0, 255));
CBrush* pOldBrush = pDC->SelectObject(&brushBlue);
使用方式和CPen差不多。
// create and select a solid blue brush
CBrush brushBlue(RGB(0, 0, 255));
CBrush* pOldBrush = pDC->SelectObject(&brushBlue);
使用方式和CPen差不多。
追问
我正在做用VC读取数据画图的程序,但是总是出错,我调试了很多次都不行,文件太大了,能不能给个邮箱或者qq什么的,我发过去,麻烦您帮我看一下,我给您提高悬赏的分数,我也是天津的哈哈
追答
发邮箱吧。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询