我正在开发一个 QListView 以提供一个动画 listView 中项目的移动的功能。例如 :
item1
item2
item3
item4
item5
如果我单击 item4 并向上移动/拖动,那么每个项目都应该通过动画向下移动一个位置,并且当前位置应该是空的,直到项目被放下。
有没有办法在不使用 qml 的情况下实现这一点。我想用 QPropertyAnimation 或 QTimeLine 来实现它,但我需要列表中项目的特定坐标/位置。我还使用 QStyledItemDelegate 实现了一个委托,在paintEvent 中我可以使用 option.rect 获取每个项目的坐标。