mfc怎么在自建类列表里画线

avatar
作者
猴君
阅读量:0

在MFC中,可以使用CDC类的LineTo()函数来画线。以下是一个示例代码:

  1. 首先,在自建类的头文件中添加以下成员变量和函数声明:
class CMyClass { public:     // ...     CPoint m_ptStart;   // 起始点坐标     CPoint m_ptEnd;     // 终点坐标      void DrawLine(CDC* pDC);   // 画线函数声明 }; 
  1. 在自建类的源文件中实现画线函数:
void CMyClass::DrawLine(CDC* pDC) {     CPen pen(PS_SOLID, 1, RGB(0, 0, 0));    // 创建一个黑色的画笔     CPen* pOldPen = pDC->SelectObject(&pen);    // 选择画笔      pDC->MoveTo(m_ptStart);    // 将画笔移动到起始点     pDC->LineTo(m_ptEnd);      // 从起始点画线到终点      pDC->SelectObject(pOldPen);    // 恢复原来的画笔 } 
  1. 在MFC的View类中的OnDraw()函数中调用自建类的画线函数:
void CMyView::OnDraw(CDC* pDC) {     CMyDoc* pDoc = GetDocument();     ASSERT_VALID(pDoc);     if (!pDoc)         return;      // TODO: 在此处为本机数据绘制代码添加绘制代码     CMyClass myClass;     // 设置起始点和终点坐标     myClass.m_ptStart = CPoint(50, 50);     myClass.m_ptEnd = CPoint(200, 200);     myClass.DrawLine(pDC); } 

这样,在自建类列表中,就能够画出一个起始点为(50, 50),终点为(200, 200)的直线了。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!