首页| 论坛| 消息

标题:希望大佬解答
作者:王基传
日期:2021-01-26 14:13
内容:

自定义了一个类X,类X中用timerEvent()和PainterEvent()实现了一个简单的动画。然后我在另外一个类的槽函数中做如下步骤:
void slot_xxx()
{
x = new X;
x->startAnimation();
...省略代码若干
x->stopAnimation();
delete x;
x = nullptr;
}
动画不显示,测试应该是事件执行顺序导致的,槽函数事件在timerEvent事件之前,有什么方法可以解决这个问题吗?


#1 [九重水 01-26 15:37]
从没见过一个在函数里面一闪而过的类对象可以实现动画。。。
x还没来得及作用,就被你delete了。。。。
#2 [snow_man_0 01-27 00:29]
new delete没有问题,可能是动画播放太快,可在动画painterEvent里面的间隔加QThread::Sleep
#3 [fsu0413 01-27 07:37]
动画怎么实现的?用timerevent的话,你这中间阻塞了timerevent也触发不了啊

回复 发表
主题 版块