qt - 多模型 QML map View

标签 qt model qml

我在 C++ 端有一个基于 AbstractListModel 的模型.该模型通过 MapView 中显示的角色具有一组位置。 .以下是我的代码的最小版本。 markerModel: MarkerModel在 C++ 端定义。

Map{
    MapItemView {
        model: markerModel
        delegate: markerDelegate
    }

    Component {
        id: markerDelegate

        MapQuickItem{
            anchorPoint: Qt.point(2.5, 2.5)
            coordinate: QtPositioning.coordinate(position.y, position.x)
            zoomLevel: 0
            sourceItem: Rectangle{
                ...
            }
        }
    }
}

代理实际上为模型中的每个位置绘制点。现在我想拥有多个这样的模型。
  • 我可以有一个 AbstractTableModel在 C++ 上而不是 AbstractListModel View 将遍历其列并调用 markerDelegate在每一列。或者对行做同样的事情。
  • 让多个模型动态地暴露给 QML,并在单个 View 上使用单个委托(delegate) markerDelegate 呈现

  • 其中哪一项是标准做法?还是可行的?如何实现其中任何一项?

    最佳答案

    您可以将每个模型的数据存储在容器中,并将适当的数据加载到模型对象中

    关于qt - 多模型 QML map View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48475529/

    相关文章:

    Java微服务训练AI模型问题

    qt - 布局 2 block 元素的正确方法

    c++ - 依赖于 C++ 函数的 QML 强制绑定(bind)更新

    c++ - 如何定义具有异构值类型的 QHash?

    c++ - Qt4.8嵌入。使用 QCursor::setPos() 调整鼠标输入会导致光标移动

    asp.net-mvc - 使用 IOC 预填充 MVC 模型 - 缓存的替代方案?

    model - Yii2 在非对象上调用成员函数 field()

    Qt QML ListView可见

    c++ - QtQuick : Change expand icon in TreeView

    qt - 如何从选项卡排序列表中排除小部件?