frp服务器:VC-MFC怎样画实心圆?

来源:百度文库 编辑:中科新闻网 时间:2024/05/05 01:52:59
已知两个点,左上角和右下角的坐标m_LeftPoint,m_RightPoint.两个点可以确定一个矩形,我想画这个矩形的内接实心圆..!用Ellipse()这个函数是画空心圆的。。我想实现画实心的圆!最好能用CClientDC的类来完成。。产生了dc(this)的对象后该怎么写?或者用其它方法也行..关键的是要求只在鼠标左建按下就能实现的!高手请指教。。能加点注释的话小弟更感激。。谢谢拉!
谢谢前两位指教。。不过我是写在OnLButtonDown里面的。。而不是写在OnDraw(CDC* pDC)里的。圆原本不存在的.。而是由鼠标左键按下才实现画圆。..请赐教..

画之前为CClientDC添加一个实心画刷就行了。
CBrush brush,*oldbrush;
brush.CreateSolidBrush(RGB(0,0,0));
oldbrush=ClientDC.SelectObject(&brush);
ClientDC.Ellipse(10,10,100,100);
ClientDC.SelectObject(oldbrush);

CBrush Brush;
Brush.CreateSolidBrush(RGB(0,0,255));
pDC->BeginPath();
pDC->Ellipse(10,10,100,100);
pDC->EndPath();
pDC->SelectObject(&Brush);
pDC->FillPath();
加到view的OnDraw(CDC* pDC)里就行了
很简单,不用注释吧?