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

   2025-02-13 9380
核心提示:在MFC中,可以使用CDC类的LineTo()函数来画线。以下是一个示例代码:首先,在自建类的头文件中添加以下成员变量和函数声明:clas

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

首先,在自建类的头文件中添加以下成员变量和函数声明:
class CMyClass{public:    // ...    CPoint m_ptStart;   // 起始点坐标    CPoint m_ptEnd;     // 终点坐标    void DrawLine(CDC* pDC);   // 画线函数声明};
在自建类的源文件中实现画线函数:
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);    // 恢复原来的画笔}
在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)的直线了。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言