首先祝大家在五一期间过的快乐!
下面是小弟遇到的问题:
我首先建了一个MFC AppWizard(exe)工程,在这个工程里我新建了一个类Tree.这个类里有个函数,我把它简化了一下,如下所示:void Tree:xy()
{
   int i;
   for(i=0;i<100;i++)
      {
         x=i+1;
         y=i+2;
      }
}我想在运行以后把所有的点都输出来,请问该怎么编程?是不是应该在View的OnDraw函数里面编程阿?请详细解释,谢谢!(最好能留下您的email或msn或qq什么的,这样我不懂也好及时的联系您)

解决方案 »

  1.   

    输出点? 是不是指的 (x,y) 这个坐标? 要直接在视图上画出这个点的位置?void CxxxxView::OnDraw(CDC* pDC)
    {
       for(int i = 0; i < point_count; ++i)
      {
          SetPixelV(x[i], y[i], point_color);
      }
    }
      

  2.   

    是不是应该在View的OnDraw函数里面编程阿
    ----------
    是的~void CxxxxView::OnDraw(CDC* pDC)
    {
       for(int i = 0; i < 100; ++i)
      {
          SetPixel(x[i], y[i], 0);//黑点
      }
    }
      

  3.   

    void Tree::Draw(CDC *pDC)
    {
      ASSERT_VALID(pDC);
      
      //创建画笔
      CPen  pen;
      pen.CreatePen(PenType,PenWidth,PenColor);
      
      //将画笔选入CDC
      CPen* pOldPen;  
      VERIFY(pOldPen=pDC->SelectObject(&pen));
      
      //开始绘图
      //画基本图形
      //下面是一种画法,很费时的说,推荐用LineTo()
      pDC->MoveTo(PointArray[0]);
      for (int i=1; i < PointArray.GetSize(); i++)
      {
        //pDC->LineTo(PointArray[i]);
        pDC->SetPixel(PointArray[i]); //PointArray是一个CPoint数组,这个时候绘制的就是选入画笔的颜色
      }
      //恢复原来的画笔
      VERIFY(pDC->SelectObject(pOldPen));
      pen.DeleteObject();
    }
    最后在CXXXView::OnDraw()中调用
    void CxxxxView::OnDraw(CDC* pDC)
    {
       m_Tree.Draw(pDC);
    }
      

  4.   

    huyoo(空格键)
    讲得好!
      

  5.   

    请问怎么把
    void Tree:xy()
    {
       int i;
       for(i=0;i<100;i++)
          {
             x=i+1;
             y=i+2;
          }
    }里面的x,y值传递到
    OnDraw函数里面啊?
      

  6.   

    里面的x,y值传递到
    --------
    那就要用到4楼的方法,可以装到 一个POINTarray 里,