ceaser97 2016-03-29 13:08 采纳率: 33.3%
浏览 1628

求一个简单的程序,vc6.0

哪位能给我提供一个画图程序吗?vc6.0能直接粘贴上去运行的。就画几条线几个矩形就好,非常感谢。

  • 写回答

1条回答

  • lx624909677 2016-03-29 15:11
    关注

    创建个MFC工程,在OnPaint里面贴下面的代码

     CRect r;
            GetClientRect(&r);   //获得当前窗口对象
            int beginX,beginY;  //开始的坐标
            int endX,endY;     //终点的坐标
            CPaintDC dc(this);  //绘图对象
            dc.FillSolidRect(&r, RGB(100,100,100));   //设置背景色
            CPen pen;        //画笔对象
            pen.CreatePen(PS_SOLID, 1, RGB(255,255,255));    //设置画笔的颜色
            dc.SetTextColor(RGB(255,255,255));   //设置文字颜色
            dc.SelectObject(&pen);   //更新画笔
    
            //初始化起点和终点的坐标
            beginX=r.left+30;
            endX=r.left+30;
    
            beginY=r.top;
            endY=r.bottom;
    
            //临时存放坐标变量
            CString tempNum;
            //画Y坐标
            dc.MoveTo(beginX, beginY);
            dc.LineTo(endX, endY);
    
            for(beginX=r.left+30,endX=r.left+40,beginY=r.top,endY=r.top; endY<=r.bottom;)
            {
                tempNum.Format(_T("%d"),endY);
                dc.MoveTo(beginX, beginY);
                dc.LineTo(endX, endY);
                dc.TextOut(beginX-30, endY, tempNum);
                beginY+=40;
                endY+=40;
            }
    
            pen.DeleteObject();   //释放之前的画笔资源
            pen.CreatePen(PS_SOLID,1,RGB(0,255,0));  //从新设置画笔
            dc.SelectObject(&pen);
            //画曲线
            int x,y;   //波形的起点坐标
            int x1,y1; //波形的终点坐标
            int temp;  //存放每次的增量 
            //初始化起点和终点的坐标
            x=x1=r.left+45;
            y=y1=(r.bottom)/2;
            for(;x1<r.right;)
            {
                dc.MoveTo(x, y);
                dc.LineTo(x1, y1);
                x=x1;
                y=y1;
                Sleep(1);
                x1++;
                temp=rand()%((r.bottom)-y1-30);
                if(temp ==0)
                {
                   temp=rand()%((r.bottom)-y1-29);
                }
                if(y1>(r.bottom)/2)
                {
                    y1-=temp;
                }
                else
                {
                    y1+=temp;
                }
    
            }
            ReleaseDC(&dc);
    
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器