问题一:
在画板上画出来的总是直线?
原因下面这段程序中if判断为假
if(event->button()&Qt::LeftButton)
{
endpoint = event->pos();
update();
}
找了半天终于发现问题在
event->button()
的button后面少了个“s”
问题二:在画板上总是出现这样的情况,再画时出现的直线都连接着上次的终点
可能是起点和终点坐标没处理好
void Dialog::mousePressEvent(QMouseEvent *event){if(event->button()==Qt::LeftButton){
lastpoint = event->pos();
}
}在if中添加第二条语句如下所示就可以了
void Dialog::mousePressEvent(QMouseEvent *event){if(event->button()==Qt::LeftButton){
lastpoint = event->pos();endpoint = lastpoint;}
}
运行结果如上