我目前正在处理的应用程序有一个 Map 作为背景,在它上面可以打开内部有多个视图的各种其他对话框(视图) . 当某些对话框处于活动状态时,拖动它时,背景图就像它上面没有任何东西一样移动 . 有人知道如何禁用它吗?我不希望 Map 对点击或对话框内的任何内容作出反应 .
组织项目,以便每个对话框在单独的qml文件中实现:
-
我有每个对话框的每个qml文件,以及应用程序的每个组件(map),所以
-
当您单击时,例如在可滚动水平列表的设置选项卡上,从qml打开设置选项卡,其中包含所有对话框,包括应用程序的底部和顶部
-
每个对话框都在 Map 上方,背景为50%透明,其中包含相关图像和按钮
-
我想在拖动对话框的背景时禁用拖动 Map . 我尝试将此设置为每个对话框:
MouseArea {
anchors.fill:parent
onClicked:mouse.accepted = true
}
(parent是包含对话框的所有元素的Item),但这不起作用 .
1 回答
如果我正确理解你的问题,那么将MouseArea的propagateComposedEvents设置为false就足够了 .