Qt:在QListView中移动项目,并使用动画而不使用qml

Qt:在QListView中移动项目,并使用动画而不使用qml,qt,delegates,qlistview,Qt,Delegates,Qlistview,我正在开发一个QListView,以提供一个在listView中设置项目移动动画的功能。例如: item1 item2 item3 item4 item5 如果我单击item4并向上移动/拖动,则每个项目都应通过动画向下移动一个位置,并且当前位置应为空,直到项目被删除 是否有任何方法可以在不使用qml的情况下实现这一点。我想用QPropertyImation或QTimeLine实现这一点,但我需要列表中项目的具体坐标/位置。我还使用QStyledItemDelegate实现了一个委托,在pai

我正在开发一个QListView,以提供一个在listView中设置项目移动动画的功能。例如:

item1
item2
item3
item4
item5
如果我单击item4并向上移动/拖动,则每个项目都应通过动画向下移动一个位置,并且当前位置应为空,直到项目被删除

是否有任何方法可以在不使用qml的情况下实现这一点。我想用QPropertyImation或QTimeLine实现这一点,但我需要列表中项目的具体坐标/位置。我还使用QStyledItemDelegate实现了一个委托,在paintEvent中,我可以使用option.rect获得每个项目的坐标