VC++6.0 双击左键函数不响应

双击鼠标左键没有反应,运行也不报错,就是自己退出来,本来双击是可以打出字的,我又设置了一个变量的值在里面,结果就不执行了,把变量赋值的语句删去后,仍然不好用,不知道是为什么
代码关键部分

void CWangLiuLin190304View::OnLButtonDblClk(UINT nFlags, CPoint point) 
{
    // TODO: Add your message handler code here and/or call default
    pDC = GetDC();
    DrawBoo(pDC,point);
    CView::OnLButtonDblClk(nFlags, point);
}

DrawBoo(CDC *pdc, CPoint ptPos)函数

void CWangLiuLin190304View::DrawBoo(CDC *pdc, CPoint ptPos)
{
    static char sz[] = "Hi,Mrs.Wang!";
    pdc->TextOut(ptPos.x,ptPos.y,sz,sizeof(sz) - 1);
}
c++

2个回答

找到原因了,我其实程序里面还有两个响应函数是LButtonDown()和LButtonUp(),我在LButtonDown()中GetDC(),在LButtonUp()中把GetDC()的DC Release掉了,我在双击左键的时候,**单击左键**和**左键抬起**事件都被触发了,就是刚拿到的DC,又被释放了,所以后来在我调试的过程中,出现了handled exception,我想应该是这个原因,如果哪里不对,还望指正!

caozhy
每个人都有一个梦才不会孤单的说话就有天堂 这个网站有坑,自己采纳自己不但不会被退还c币,还会被惩罚信用。而我也算白回答你了。你做了一件只有网站老板开心的事情。
大约一年之前 回复
// CQ753153View message handlers

void CQ753153View::DrawBoo(CDC *pdc, CPoint ptPos)
{
    wchar_t sz[] = _T("Hi,Mrs.Wang!");
    pdc->TextOut(ptPos.x,ptPos.y,(LPCTSTR)sz,sizeof(sz) / sizeof(wchar_t) - 1); //注意这里字符串长度的计算
}

void CQ753153View::OnLButtonDblClk(UINT nFlags, CPoint point)
{
    // TODO: Add your message handler code here and/or call default
    pDC = GetDC();
    DrawBoo(pDC,point);

    CView::OnLButtonDblClk(nFlags, point);
}

图片说明

完整代码:https://download.csdn.net/download/caozhy/11050233

xiaowang_hi
xiaowang_hi 回复caozhy: 哦...竟然是这样的,谢谢提醒,好在问题解决了。
大约一年之前 回复
caozhy
每个人都有一个梦才不会孤单的说话就有天堂 回复xiaowang_hi: 不信你可以检查下的c币流水,是不是没有退给你。
大约一年之前 回复
caozhy
每个人都有一个梦才不会孤单的说话就有天堂 回复xiaowang_hi: 采纳自己的回答,c币就被系统吞了,也不会返回给你。下次不要再采纳自己。
大约一年之前 回复
xiaowang_hi
xiaowang_hi 谢谢啦,每次都回答我一些愚蠢的问题
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问