paint事件思路:获取鼠标当前点,QCursor::pos();再用m_points.push_back(curren
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/11 20:54:34
paint事件
思路:获取鼠标当前点,QCursor::pos();再用m_points.push_back(currentpoint);记下当前点,然后用
painter.drawPolyline(points,count);将这些点画出来,但是现在遇到这个问题,想鼠标单击就可以画线,释放鼠标就停止,如果断断续续的画一样东西,笔画都是连起来的,如何解决这个问题,
若是在mouseReleaseEvent(QMouseEvent *)的时候就可把收集到的点给去掉,就会显示不出图形,
思路:获取鼠标当前点,QCursor::pos();再用m_points.push_back(currentpoint);记下当前点,然后用
painter.drawPolyline(points,count);将这些点画出来,但是现在遇到这个问题,想鼠标单击就可以画线,释放鼠标就停止,如果断断续续的画一样东西,笔画都是连起来的,如何解决这个问题,
若是在mouseReleaseEvent(QMouseEvent *)的时候就可把收集到的点给去掉,就会显示不出图形,
能不能在mousePressEvent里面使用话线那段函数呢?每次进入使用新的位置,释放的时候就把位置清掉,估计可以吧.
再问: 不可以,mousePressEvent事件的话只会记录按下时的那个点,不会记录移动的点的。
再答: mouseMoveEvent呢?
再问: 私聊可以不,我把程序代码给你,你也看看 591015602
再答: 定义一个标志
mousepressevent将标志置位,意思是可以画
mousereleaseevent释放这个标志,意思是不能画
mousemoveevent下面判断这个标志,置位就画,没有置位就不画。
大概思路是这样,我也不知道可不可行的。
再问: 不可以,mousePressEvent事件的话只会记录按下时的那个点,不会记录移动的点的。
再答: mouseMoveEvent呢?
再问: 私聊可以不,我把程序代码给你,你也看看 591015602
再答: 定义一个标志
mousepressevent将标志置位,意思是可以画
mousereleaseevent释放这个标志,意思是不能画
mousemoveevent下面判断这个标志,置位就画,没有置位就不画。
大概思路是这样,我也不知道可不可行的。