MFC新手提问,为何我在VS2010里面画不出图形

乐百川 2014-08-30 09:36:33
小学期作业,我全是按着老师给的PPT上面来的,可是只有vc6.0可以正常运行,换成vs2010却画不出图形,这是为何呢
PPT内容如下
[例Ex_Draw] 通过设置窗口和视口大小来改变显示的比例。
(1)    创建一个默认的单文档应用程序Ex_Draw。
(2)    在CEx_DrawView::OnDraw函数中添加下列代码:
void CEx_DrawView::OnDraw(CDC* pDC)
{ CEx_DrawDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CRect rectClient;
GetClientRect(rectClient); // 获得当前窗口的客户区大小
pDC->SetMapMode(MM_ANISOTROPIC); // 设置MM_ANISOTROPIC映射模式
pDC->SetWindowExt(1000,1000); // 设置窗口范围
pDC->SetViewportExt(rectClient.right,-rectClient.bottom);// 设置视口范围
pDC->SetViewportOrg(rectClient.right/2,rectClient.bottom/2);
pDC->Ellipse(CRect(-500,-500,500,500));
}
(3)编译运行,如图

vc6.0的相应代码
// CFuck2View drawing

void CFuck2View::OnDraw(CDC* pDC)
{
CFuck2Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
CRect rectClient;
GetClientRect(rectClient); // 获得当前窗口的客户区大小
pDC->SetMapMode(MM_ANISOTROPIC); // 设置MM_ANISOTROPIC映射模式
pDC->SetWindowExt(1000,1000); // 设置窗口范围
pDC->SetViewportExt(rectClient.right,-rectClient.bottom);// 设置视口范围
pDC->SetViewportOrg(rectClient.right/2,rectClient.bottom/2);
pDC->Ellipse(CRect(-500,-500,500,500));

}

vs2010的相应代码,多出的if判断我不了解有什么用……

// CwuwuView 绘制

void CwuwuView::OnDraw(CDC* /*pDC*/)
{
CwuwuDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;

// TODO: 在此处为本机数据添加绘制代码
CRect rectClient;
GetClientRect(rectClient); // 获得当前窗口的客户区大小
pDC->SetMapMode(MM_ANISOTROPIC); // 设置MM_ANISOTROPIC映射模式
pDC->SetWindowExt(1000,1000); // 设置窗口范围
pDC->SetViewportExt(rectClient.right,-rectClient.bottom);// 设置视口范围
pDC->SetViewportOrg(rectClient.right/2,rectClient.bottom/2);
pDC->Ellipse(CRect(-500,-500,500,500));

}

运行结果vs2010那个没有椭圆……现在我一直卡在这里了,求助……
...全文
257 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2014-08-30
  • 打赏
  • 举报
回复
偶遇到类似问题都是用 “每次用/*...*/注释掉不同部分再重新编译,直到定位到具体语法出错的位置。” 的方法解决的。
乐百川 2014-08-30
  • 打赏
  • 举报
回复
找到解决办法了,先把PPT里的代码复制到CSDN的代码段里,在预览的时候在复制一下,就能正常识别了
乐百川 2014-08-30
  • 打赏
  • 举报
回复
tmd,找到原因了是PPT的问题,我照着代码手打没问题,直接复制粘贴就出错了

65,187

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧