【发布时间】:2020-07-09 21:24:15
【问题描述】:
美好的一天!我正在设计一个基于 Qt 的 GUI 平台,该平台显示地图并允许用户在地图上添加标记/图钉。 p>
我正在使用以下 QML 在 QtQuickWidget 中渲染地图:
Plugin {
id: mapPlugin
name: "osm"
}
我想允许用户使用表单上的按钮在地图上添加交互式图钉。用户可以按住地图上的一个点,这将打开表单,用户可以在其中命名该地点并按OK。
我想要实现的示例: https://webmshare.com/play/5EXV8
我曾尝试使用 QQmlComponent 和 QQuickView 但我是 不成功 [http://doc.qt.io/qt-5/qtqml-cppintegration-interactqmlfromcpp.html]
另一种方法是使用 MapItems 在 QML 本身内添加对象,但是 这是非常不直观的。这就是我的 map.qml 的样子: https://gist.github.com/blackvitriol/7941688d6362162888630a28c79f8cd9
项目结构:https://imgur.com/a/P8YAS
谁能告诉我如何让用户在地图上按住左键,然后在该点添加一个标记?
【问题讨论】:
-
我的意思是创建一个 QML 文件并在同一个文件中添加大量对象(标记)是没有意义的。我尝试将 MapCircle 项目添加到我的 Map.qml 中,但即使这样也不可见。
-
添加项目结构和map.qml