我正在尝试为我的一个项目编写原型(prototype),该项目涉及基于 qml 的应用程序中的多个窗口。一切都按预期工作,但是当焦点在窗口之间改变并且动画开始时(在我的例子中它是快速控件按钮内的默认动画)它会开始闪烁/疯狂闪烁。
注意:我目前正在运行 Qt 5.13 beta,但问题已经出现在 Qt 5.12 中,距离 Qt 5.13 发布只有 5 天了。它存在于 Windows 和 macOS 上
这是一个简单示例中的问题的快速演示,首先是恢复窗口焦点并单击按钮(因此启动动画)时闪烁的 gif:
和代码:
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 2.13
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
Rectangle{
anchors.fill: parent
color: "red"
Button{
height: 50
width: 30
}
}
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World 2")
Rectangle{
anchors.fill: parent
color: "blue"
Button{
height: 50
width: 30
}
}
}
}
还有更高级的动画,例如我的原型(prototype)中的这个动画(这是它应该在没有闪烁的情况下出现的样子):
但在子窗口中,它根本无法使用:
感谢您知道它来自哪里或任何解决方案!
最佳答案
安装最终版 Qt 5.13(不是测试版)后,问题就消失了。我猜这是一个内部 Qt 问题。
关于c++ - 一旦在任何窗口内运行动画,qt QML 中的多个窗口就会开始闪烁/闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56306438/