为什么使用GetParent画线,鼠标指针与屏幕上的线隔一段距离?代码如下:/* CDC *hdc=GetDC();hdc->MoveTo(Mypoint.x,Mypoint.y);hdc->LineTo(point);ReleaseDC(hdc);*/CClientDC ccdc(GetParent());// CWindowDC ccdc(GetParent());;ccdc.MoveTo

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 17:54:32

为什么使用GetParent画线,鼠标指针与屏幕上的线隔一段距离?代码如下:/* CDC *hdc=GetDC();hdc->MoveTo(Mypoint.x,Mypoint.y);hdc->LineTo(point);ReleaseDC(hdc);*/CClientDC ccdc(GetParent());// CWindowDC ccdc(GetParent());;ccdc.MoveTo
为什么使用GetParent画线,鼠标指针与屏幕上的线隔一段距离?
代码如下:
/* CDC *hdc=GetDC();
hdc->MoveTo(Mypoint.x,Mypoint.y);
hdc->LineTo(point);
ReleaseDC(hdc);*/
CClientDC ccdc(GetParent());
// CWindowDC ccdc(GetParent());;
ccdc.MoveTo(Mypoint);
ccdc.LineTo(point.x,point.y);
上面的例子一个是没用,一个是用了的.
结果却不一样.鼠标指针与屏幕隔一段距离,当画线的时候,鼠标总在下面,而画的线总比鼠标高出一截.而最底下的却画不出来
为什么呢?我并没改什么啊.只有一个可能!GetParent
用GetDesktopWindow()也是一样.鼠标指针总是屏幕画线的下面一段距离..

为什么使用GetParent画线,鼠标指针与屏幕上的线隔一段距离?代码如下:/* CDC *hdc=GetDC();hdc->MoveTo(Mypoint.x,Mypoint.y);hdc->LineTo(point);ReleaseDC(hdc);*/CClientDC ccdc(GetParent());// CWindowDC ccdc(GetParent());;ccdc.MoveTo
首先我要说的是你的情况是正常的,而且确实是GetParent()做的怪,因为是指向父窗口的,但你捕获到的点的坐标是View类窗口的坐标,假设你捕获到的点是(10,10),那你画出来的线就是MainFrame窗口的(10,10)点(MainFrame窗口坐标的(0,0)点是工具栏的左上角的坐标).所以你总会看到画出来的线比鼠标要高出一点(就高出工具栏的高度).致于为什么下面的画不出来,道理是一样的,因为捕获不到那里的坐标.不知道你能不能明白呢!

为什么使用GetParent画线,鼠标指针与屏幕上的线隔一段距离?代码如下:/* CDC *hdc=GetDC();hdc->MoveTo(Mypoint.x,Mypoint.y);hdc->LineTo(point);ReleaseDC(hdc);*/CClientDC ccdc(GetParent());// CWindowDC ccdc(GetParent());;ccdc.MoveTo 为什么鼠标灯会闪?为什么设计鼠标灯会闪? 眼镜蛇鼠标看起来还不错,有朋友使用过吗? 激光鼠标在什么桌面上不能使用啊?我的桌子是实木的.为什么不能用呢?试过在别的桌子都能用.玻璃除外. 数学分析画线为什么发散 为什么我的鼠标突然就有加速度了?鼠标时 kinzu 画线法 为什么画直线 为什么arcgis矢量化时要先画线 主机电源关掉以后 为什么鼠标灯还是会闪 激光鼠标的工作原理是什么PS:激光鼠标为什么在玻璃或光滑的面上都无法工作?(就是光电鼠标) 南孚电池是碱性电池吗?无线鼠标使用南孚有影响吗 笔记本怎么使用鼠标滑轮的功能?我的是联想G400s,请说清楚点, 扫描件中的英文翻译成中文,如何使用鼠标点击翻译? 机械制图相切处画线问题为什么A不用画线B要画线呢? 使用鼠标4D我的鼠标有4D功能,安装了驱动精灵,接下来如何驱动4D功能,我刚买4D鼠标是蔡依林代言的 paint事件思路:获取鼠标当前点,QCursor::pos();再用m_points.push_back(currentpoint);记下当前点,然后用painter.drawPolyline(points,count);将这些点画出来,但是现在遇到这个问题,想鼠标单击就可以画线,释放鼠 如何使鼠标指到不认识的单词翻译出来 平板划线法为什么要重复画线