我面临着非常严重的情况。通过写这个问题,我希望真正的专业人士会对我要描述的问题发表意见。我报告了https://bugreports.qt.io/中的错误:


  我为QTextEdit的maximumWidth属性创建了QPropertyAnimation,尽管它适用于minimumWidth属性,但它无法正常工作(它将状态从开始状态立即更改为结束状态)。
      请参阅随附的代码。


并已附加.h和.cpp文件。请参见那些文件here(文件名为new.h和new.cpp)。

我得到了以下回应:


  MaximumWidth不是要设置动画的属性。它保留了窗口小部件可以具有的最大宽度,它与布局等有关。更改maximumWidth(以及minimumWidth)不一定会触发重新布局和重新绘制。您应该设置大小的动画。


请向我解释说它是错误还是没有?请告诉我minimumWith属性是如何动画的,但是当它涉及到maximumWidth属性时,那我应该就不起作用了,这样就可以了吗?我只是不明白他们的意思,请解释。

附言我之所以编写此代码,是因为我想通过动画关闭正确的QTextEdit,并确保在调整主窗口(按钮和两个QTextEdit所在的位置)的大小时,不会恢复关闭的QTextEdit。

最佳答案

您是否检查了maximumWidth的实际值?您似乎未在代码中设置特定的maximumWidth。

maximumWidth的默认值为16777215,并且您设置的持续时间为1毫秒。结束动画。在1毫秒内从16777215衰减到3。我想看起来像“即时”。

关于c++ - Qt-QPropertyAnimation中有错误吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3326690/

10-12 22:23