c++mfc关于类的问题

菜鸟提问,我要在view里面弄一个函数,这个函数调用的是另一个类里的东西,那个类是我建的,我选的是view的基类叫Cline,比如说我那个类里面只有一个画直线的函数voi... 菜鸟提问,我要在view里面弄一个函数,这个函数调用的是另一个类里的东西,那个类是我建的,我选的是view的基类叫Cline,比如说我那个类里面只有一个画直线的函数
void Cline::line()
{
CDC *pDC=GetDC();
pDC-> MoveTo(50,50);
pDC-> LineTo(100,100);
}

之后在view头文件里加#include “line.h”
在view里的个函数里加
Cline a;
a.line();
之后运行的话,就会出现图片里的问题,而且点忽略会出现线,但是那个线在窗口外面,不是很懂,求解释
展开
 我来答
1317204986
2012-04-09 · TA获得超过492个赞
知道小有建树答主
回答量:291
采纳率:0%
帮助的人:356万
展开全部
GetDC是CWnd类中的成员函数
如果你的Cline类没有继承CWnd类的话
更本就不能用GetDC这个函数
百度网友415a236
2012-04-09 · 超过11用户采纳过TA的回答
知道答主
回答量:29
采纳率:0%
帮助的人:33.4万
展开全部
从图片中的错误提示来看,是断言错误了
找到afxwin2.inl文件的第112行
{ ASSERT(::IsWindow(m_hWnd)); return CDC::FromHandle(::GetDC(m_hWnd)); }

分析得知:
应该是 ASSERT(::IsWindow(m_hWnd)); 出错
也就是说,line()中调用GetDC();时,m_hWnd不是一个有效的窗体句柄

你需要检查一下Cline,看是否初始化了
追问
嗯有点不是很懂,那怎么看是否初始化呢?
追答
你调试跟踪一下,看m_hWnd是不是为空?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式