我希望 paintEvent() 每秒被调用 60 次以在一个小部件内移动几个对象。Widget 类似于 chrome 浏览器的选项卡:当您将选项卡拖离其位置很远时,它会向后移动,当它到达其位置时会降低速度。
我使用连接到插槽的 QTimer,我在其中重新计算一些几何参数,然后调用 update() 以使 qt 主循环调用paintEvent(),在其中绘制一些线条和 QPixmap。
但是设置为 1/60 秒间隔的两个 QTimer 对象正在消耗 10% 的“Core i5 2500K”CPU。对于每个每秒 60 个滴答声的 2 个计时器来说,这不是太多的 CPU 时间吗?如果我从 QTimer 连接到的 slot() 中删除所有代码(“return;”语句除外),CPU 时间的情况是相同的。