找回密码
 立即注册
收起左侧

如何鼠标点击后绘图

1
回复
8832
查看
[复制链接]
累计签到:1 天
连续签到:1 天
来源: 2013-12-22 01:41:17 显示全部楼层 |阅读模式
1Qter豆
void Draw_net::mousePressEvent(QMouseEvent *event)
{
QPainter painter(this);
painter.drawEllipse(event->x(),event->y(),15,15);
}
想在鼠标点击位置画一个圆,但是这样写就报错,如下
QWidget::paintEngine: Should no longer be called
QPainter::begin: Paint device returned engine == 0, type: 1
网上搜了下说是只能在painterEvent函数里面绘图,那我想在点击鼠标时绘图应该怎么做,求教,网上搜了很久都没有这方面的东西呀。
小白求教大神了。

最佳答案

查看完整内容

定义变量来存储绘图的坐标,然后在mousePressEvent()中给变量赋值,并在该函数最后调用update()函数,这时会自动调用paintEvent()函数,在这个里面进行绘图即可。
回复

使用道具 举报

累计签到:1572 天
连续签到:1 天
2013-12-22 01:41:18 显示全部楼层
定义变量来存储绘图的坐标,然后在mousePressEvent()中给变量赋值,并在该函数最后调用update()函数,这时会自动调用paintEvent()函数,在这个里面进行绘图即可。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了