QML的Label控件本身是不支持加载图片的,但可以通过嵌套一个Image控件来实现在Label中显示图片。
以下是一段示例代码,演示如何在Label中显示图片:
import QtQuick 2.14
Item {
width: 200
height: 100
Label {
id: label
anchors.centerIn: parent
text: "Hello World"
Image {
id: image
source: "image.png"
anchors.fill: parent // 图片铺满整个Label
visible: true // 默认显示图片
}
MouseArea {
anchors.fill: parent
onClicked: {
image.visible = !image.visible // 点击Label可切换图片的显示状态
}
}
}
}
在上述示例代码中,首先定义了一个Item作为根元素,然后在其中嵌套了一个Label控件和一个Image控件。Image控件作为Label的子元素,覆盖整个Label,从而实现在Label中显示图片的效果。
在MouseArea的onClick事件处理函数中,可以通过修改Image的visible属性来控制图片的显示与隐藏。因此,点击Label时将触发该事件,从而实现图片的显示与隐藏交替出现的效果。