Кажется, что функциональность, которую вы хотите показать / скрыть QGraphicsItem
объектов, выходит за рамки простого "анимации движения" , который выполняет класс анимации. Это только для одного объекта за раз, и любое появление или исчезновение вы должны написать сами.
Вы все еще могли бы получить некоторый пробег из QGraphicsItemAnimation
(хотя тот факт, что он использует свой собственный таймер вместо того, чтобы быть привязанным к частоте кадров вашего видео, является немного хитрым).
Пренебрегая «поиском» на мгновение, появляется сигнал QTimeLine :: законченный () . Если вы позволите концу активной временной шкалы анимации аннотации представлять точку, где вы хотите, чтобы она исчезла, вы можете вызвать QGraphicsItem :: hide () в этой точке. Когда придет время включить его, вы создадите новый QGraphicsItemAnimation
(основанный на следующем запуске данных ключевого кадра для этого объекта) и вызовете QGraphicsItem :: show () .
Обратите внимание, что одной из главных особенностей Qt 4.6 является структура QtAnimation , которая является более сложной, но также довольно сложной. Я еще не использовал его, но просматривая примеры , кажется, что вы можете "анимировать" свойство видимости или непрозрачности.