Window {
id: mainWindow
width: 960
height: 600
flags: Qt.FramelessWindowHint | Qt.WindowMinimizeButtonHint | Qt.Window
Rectangle {
width: 15
height: 15
anchors {
top: parent.top
left: parent.left
topMargin: 10
leftMargin: 910
}
SvgImage {
width: 11
height: 2
source: "images/Collapse.svg"
anchors {
centerIn: parent
}
}
MouseArea {
id: mouse
anchors {
fill: parent
}
onPressed: {
mainWindow.showMinimized()
}
}
Timer {
repeat: true
interval: 1000
running: true
onTriggered: {
console.log("mouse.pressed = ", mouse.pressed);
}
}
}
}我遇到了Qt.FramelessWindowHint的问题。在使用showMinimized()函数之后,我将恢复窗口,但是任何单击窗口都会再次导致窗口最小化。mouseArea从来不受压力。我试着把计时器打印的mouse.pressed值--而且一直都是假的。我找到了关于这个问题的几个链接,但是除了在恢复窗口时使用全屏之外,没有其他解决方案。我的应用程序总是保持相同的大小,永远不会转到全屏。
https://www.qtcentre.org/threads/42641-QML-rendering-problems-after-showMinimized()
QML: rendering problems after showMinimized()
也许你可以给我一个解决办法的提示。顺便说一下,我用的是QT5.15
发布于 2022-05-11 12:52:37
在onClicked内部使用onPressed的insted。
发布于 2022-03-31 19:20:35
实际上,在运行您的代码之后,我无法看到任何窗口--我添加了visible: true并删除了SvgImage。
,这就是我运行的内容:
import QtQuick 2.15
import QtQuick.Window 2.15
Window {
id: mainWindow
width: 960
height: 600
visible: true
flags: Qt.FramelessWindowHint | Qt.WindowMinimizeButtonHint | Qt.Window
Rectangle {
width: 15
height: 15
color: "#f50909"
anchors {
top: parent.top
left: parent.left
topMargin: 10
leftMargin: 910
}
MouseArea {
id: mouse
anchors {
fill: parent
}
onPressed: {
mainWindow.showMinimized()
}
}
}
},这是我的结果,它正确工作:

https://stackoverflow.com/questions/71684682
复制相似问题