0

Qt は初めてで、Ovi マップを表示しようとしています。

残念ながら、私のプログラムはただクラッシュします。これが私のコードです:

    MapView::MapView(QWidget *parent, const char *name) {

    mappingManager = 0;


    QGeoServiceProvider *serviceProvider = new QGeoServiceProvider("nokia");
    // QGeoSearchManager *searchManager = 0;
    // QGeoServiceProvider serviceProvider("nokia");
    //QGeoRoutingManager *routingManager = 0;
    //routingManager = serviceProvider.routingManager();

    if (serviceProvider->error() == QGeoServiceProvider::NoError) {
        mappingManager = serviceProvider->mappingManager();
       // searchManager = serviceProvider.searchManager();

        QGraphicsScene *scene = new QGraphicsScene(this);
        QGraphicsView *view = new QGraphicsView(scene, this);
        mapGraphics = new QGraphicsGeoMap(mappingManager);
        mapGraphics->setMapType(QGraphicsGeoMap::StreetMap);
        mapGraphics->setConnectivityMode(QGraphicsGeoMap::HybridMode);
       // scene->addText("Map view");
        scene->addItem(mapGraphics);

        view->show();
    } else {
       QMessageBox::information(this, "Map", "Service provider error");
    }
}

クラッシュの原因と思われる行をコメントアウトしました - Scene->addItem(mapGraphics);

画面に表示できるように、mapGraphics を追加するにはどうすればよいですか? 私は本当にこれで手をいただければ幸いです。

よろしくお願いします、J

4

1 に答える 1

0

Maps Demoチュートリアルをご覧ください。

ソース コードは {QtSDK}\Examples\4.7\mobile\mapsdemo\ またはqt.gitorious.orgにあります。

于 2011-10-17T09:25:07.047 に答える