You can use QPropertyAnimation in your QListView itself. It animates the property of a widget in this case it is the QListView::verticalScrollBar() "value" property. The start value would be the current scrollbar's value and the end value would be the QPoint at which the clicked index is present in the listview. There are many ways to get the clicked index's position in the view. To get a QML like feel in the animation provide enough animation duration and a eye caching easing curve - QEasingCurve (my fav is OutQuad though :) ) - build easingcurve example under Examples/Animation to see different easing curves.