首页 > 其他 > 详细

(六)绘图,文本编程,菜单

时间:2019-05-02 14:46:22      阅读:151      评论:0      收藏:0      [点我收藏+]

 

1,简单绘图

  画直线

    a,鼠标按下和抬起       

void CDrawView::OnLButtonDown(UINT nFlags, CPoint point)
{
    // TODO: 在此添加消息处理程序代码和/或调用默认值

    m_myPoint = point;

    CView::OnLButtonDown(nFlags, point);
}

 

void CDrawView::OnLButtonUp(UINT nFlags, CPoint point)
{
    // TODO: 在此添加消息处理程序代码和/或调用默认值

    CClientDC dc(this);
    dc.MoveTo(m_myPoint);
    dc.LineTo(point);

    CView::OnLButtonUp(nFlags, point);
}

 

    b,CPaintDC 只能在OnPaint 中使用

      CClientDC 在任何地方都可以使用

    c,起点和终点

        MoveTo  移动当前位置

        LineTo  从当前位置到一点画直线,但不包括那个点

    d,选择所属类 -> 右击 -> 添加变量,这种方法会自动帮你初始化变量

    技术分享图片

  连续的线

    鼠标移动事件

// CDrawView 消息处理程序


void CDrawView::OnLButtonDown(UINT nFlags, CPoint point)
{
    // TODO: 在此添加消息处理程序代码和/或调用默认值

    m_myPoint = point;
    m_isPressed = true;

    CView::OnLButtonDown(nFlags, point);
}


void CDrawView::OnLButtonUp(UINT nFlags, CPoint point)
{
    // TODO: 在此添加消息处理程序代码和/或调用默认值
#if 0
    CClientDC dc(this);
    dc.MoveTo(m_myPoint);
    dc.LineTo(point);
#endif
    m_isPressed = false;
    CView::OnLButtonUp(nFlags, point);
}


void CDrawView::OnMouseMove(UINT nFlags, CPoint point)
{
    // TODO: 在此添加消息处理程序代码和/或调用默认值
    if (m_isPressed) {
        CClientDC dc(this);
        dc.MoveTo(m_myPoint);
        dc.LineTo(point);

        // 终点作为起点
        m_myPoint = point;
    }

    CView::OnMouseMove(nFlags, point);
}

技术分享图片

 

void CDrawView::OnDraw(CDC* pDC)
{
    CDrawDoc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);
    if (!pDoc)
        return;

    // TODO: 在此处为本机数据添加绘制代码

    // 画圆
    /*
    参数: x1 指定椭圆外接矩形左上角的X逻辑坐标。  
    y1 指定椭圆外接矩形左上角的Y逻辑坐标。  
    x2 指定椭圆外接矩形右下角的X逻辑坐标。  
    y2 指定椭圆外接矩形右下角的Y逻辑坐标。 
    */
    pDC->Ellipse(20,20,120,120);

    // 画刷
    CBrush brush(RGB(255, 0, 0));
    pDC->SelectObject(&brush);
    pDC->Ellipse(20, 20, 120, 120);
}

 

技术分享图片

 

2,位图的 使用

 

3,画刷和画笔的使用

4,文本编程

5,菜单

(六)绘图,文本编程,菜单

原文:https://www.cnblogs.com/xiangtingshen/p/10802258.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!