Qt C ++慢慢移动QListWidget

时间:2013-02-15 16:26:01

标签: c++ qt

我有QListWidget,我需要从一个点移动到另一个点,但它必须很慢,就像动画一样。你能帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

您需要使用Qt Animation framework。有许多样本可供选择,因此您应该阅读它。

您可以使用QPropertyAnimation课程,通过设置QListWidget的{​​{3}}属性动画来完成您的工作:

 QPropertyAnimation animation(&lstWidget, "geometry"); //animate geometry property
 animation.setDuration(5000); // 5 seconds 
 animation.setStartValue(QRect(50, 50, 100, 100)); // start value for geometry property
 animation.setEndValue(QRect(300, 300, 100, 100)); // end value for geometry property

 animation.start();

这将从小部件(50,50)移动到(300,300)。您可以通过从geometry读取lstWidget属性来开始从当前位置移动等来设置起始值。