点击其中一个组件,然后这个组件全屏,其它组件隐藏起来
import QtQuick 2.12
import QtQuick.Window 2.12
Window {
width: 640
height: 480
visible: true
title: qsTr("Hello World")
Item {
id: root
anchors.fill: parent
Rectangle {
id: leftRect
anchors.left: parent.left
width: parent.width / 3
height: parent.height
color: 'green'
MouseArea {
anchors.fill: parent
onClicked: {
rightRect.visible = false // 隐藏右边组件
centerRect.visible = false // 隐藏中心组件
leftRect.anchors.fill = root // 铺满窗口
leftRect.focus = true // 设置焦点,这样才能触发该组建的按键事件
}
}
Keys.onEscapePressed: {
centerRect.visible = true
rightRect.visible = true
leftRect.anchors.fill = undefined
leftRect.width = root.width / 3
}
}
Rectangle {
id: centerRect
anchors.left: leftRect.right
anchors.right: rightRect.left
width: parent.width / 3
height: parent.height
color: 'blue'
focus: true
MouseArea {
anchors.fill: parent
onClicked: {
leftRect.visible = false
rightRect.visible = false
centerRect.anchors.fill = root
centerRect.focus = true
}
}
Keys.onEscapePressed: {
leftRect.visible = true
rightRect.visible = true
centerRect.anchors.fill = undefined
centerRect.width = root.width / 3
}
}
Rectangle {
id: rightRect
anchors.right: parent.right
width: parent.width / 3
height: parent.height
color: 'red'
MouseArea {
anchors.fill: parent
onClicked: {
leftRect.visible = false
centerRect.visible = false
rightRect.anchors.fill = root
rightRect.focus = true
}
}
Keys.onEscapePressed: {
leftRect.visible = true
centerRect.visible = true
rightRect.anchors.fill = undefined
rightRect.width = root.width / 3
}
}
}
}