vc如何画圆,并填充颜色!
答案:2 悬赏:10 手机版
解决时间 2021-03-21 21:02
- 提问者网友:鐵馬踏冰河
- 2021-03-21 05:14
vc如何画圆,并填充颜色!
最佳答案
- 五星知识达人网友:患得患失的劫
- 2021-03-21 06:29
首先是画圆,好多人说没有画圆的函数吧,其实圆不就是椭圆的一个特例吗?这个明白了吧。OK,下面说具体实现方法。
CClientDC dc(this);
CPen pen(PS_SOLID,m_nLinewidth,m_ncolor);
dc.SelectObject(&pen);
CBrush *pBrush=new CBrush(m_ncolor);
dc.Ellipse(point.x-5,point.y-5,point.x+5,point.y+5);
CRgn *hrgn;
hrgn=(CRgn*)CreateEllipticRgn(point.x-5,point.y-5,point.x+5,point.y+5);
dc.FillRgn(hrgn,pBrush);
貌似可以。就是有错误了啊!
第二种方法是对第一种方法的改进,说是改进还不如说是换了个函数。画完圆之后,调用刷子
函数来填充颜色,成功。代码如下:
CClientDC dc(this);
CPen pen(PS_SOLID,m_nLinewidth,m_ncolor);
dc.SelectObject(&pen);
CBrush *pBrush=new CBrush(m_ncolor);
dc.Ellipse(point.x-5,point.y-5,point.x+5,point.y+5);
CRgn *hrgn;
hrgn=(CRgn*)CreateEllipticRgn(point.x-5,point.y-5,point.x+5,point.y+5);
dc.FillRgn(hrgn,pBrush);
貌似可以。就是有错误了啊!
第二种方法是对第一种方法的改进,说是改进还不如说是换了个函数。画完圆之后,调用刷子
函数来填充颜色,成功。代码如下:
全部回答
- 1楼网友:舊物识亽
- 2021-03-21 06:43
用gdi函数,ellipese函数画圆,再把画刷变成红色;
参考如下:
.....
cbrush brush(rgb(255,0,0));
pdc->selectobject(&brush);
pdc->ellipese(....);
.....
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯