C++ 如何从Qt c++;代码到QML代码?

C++ 如何从Qt c++;代码到QML代码?,c++,qt,google-maps,qml,C++,Qt,Google Maps,Qml,我在Qt中有这个代码 int main(int argc, char *argv[]) { QGuiApplication app(argc,argv); QQuickView view; QUrl q(QStringLiteral("QML:///places_map.qml")); view.setSource(QUrl(QStringLiteral("qrc:///places_map.qml"))); //I've t

我在Qt中有这个代码

int main(int argc, char *argv[])  {
    QGuiApplication app(argc,argv);
       QQuickView view;
       QUrl q(QStringLiteral("QML:///places_map.qml"));
       view.setSource(QUrl(QStringLiteral("qrc:///places_map.qml")));
         //I've tried this to init qml properties
       QObject *object = view.rootObject();
         object->setProperty("latitude", 48.4656371);
         object->setProperty("longitude", 31.04900455);

         QQuickItem *item = view.rootObject();
        item->setProperty("device_latitude", 48.4656371);
        item->setProperty("device_longitude", 35.04900455);
}
和我的qml文件:

import QtQuick 2.0
import QtPositioning 5.5
import QtLocation 5.6

Rectangle {
    width: 720
    height: 480

    property double latitude:  0
    property double longitude: 0
    property double device_latitude: 0 //48.4656371
    property double device_longitude: 0 //35.54900455

    property variant location: QtPositioning.coordinate(latitude, longitude)
    property variant deviceLocation: QtPositioning.coordinate(device_latitude, device_longitude)

    Plugin {
        id: myPlugin
        name: "osm"
    }
    PlaceSearchModel {
           id: searchModel

           plugin: myPlugin

           searchTerm: "Pizza"
           searchArea: QtPositioning.circle(deviceLocation)

           Component.onCompleted: update()
       }
    Map {
        id: map
        anchors.fill: parent
        plugin: myPlugin;
        center: location
        zoomLevel: 13

        MapItemView {
            model: searchModel
            delegate: MapQuickItem {
                coordinate: deviceLocation //QtPositioning.coordinate(device_latitude, device_longitude)

                anchorPoint.x: image.width * 0.5
                anchorPoint.y: image.height

                sourceItem: Column {
                    Image { id: image; source: "marker.png" }
                    Text { text: title; font.bold: true }
                }
            }
        }
    }
}
在qml代码属性中,设置双纬度和双经度在地图上的视图 但地图显示

如果我在qml代码中设置了正确的坐标,一切都会正常工作
如何从C++代码中输入这个值,以便地图显示我的城市?< /P> < P>使用QQuy属性会更好。 我让它这样工作:

main.cpp

#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQuickItem>
#include <QQuickView>

int main(int argc, char *argv[])
{
    QGuiApplication app(argc, argv);

    QQuickView view;
    view.setSource(QUrl(QStringLiteral("qrc:/main.qml")));

    QQuickItem *item = view.rootObject();
    item->setProperty("number", 22.002);
    view.show();
    return app.exec();
}

谢谢你的回答,纬度和强项现在和以前的C++代码很好,我已经尝试过你的代码用于其他数据(DeVice),但是它没有用,你能看看我更新的代码吗?
import QtQuick 2.4
import QtQuick.Window 2.2

Rectangle{
    visible: true
    width: 640
    height: 480
    property double number : 0

    Text {
        id: textEdit
        text: number
        verticalAlignment: Text.AlignVCenter
        anchors.top: parent.top
        anchors.horizontalCenter: parent.horizontalCenter
        anchors.topMargin: 20
    }
}