QGIS3.x二次开发(三)打开POSTGIS图层

    QString service = QStringLiteral("");
    QString host = QStringLiteral("localhost");
    QString port = QStringLiteral("5432");
    QString database = QStringLiteral("postgis_25_sample");

    bool useEstimatedMetadata = false;
    QgsDataSourceUri::SslMode sslmode = QgsDataSourceUri::SslMode::SslDisable;

    QString username = QStringLiteral("postgres");
    QString password = QStringLiteral("geostar");
    QString authcfg = QStringLiteral("");

    QgsDataSourceUri uri;
    uri.setConnection(host, port, database, username, password, sslmode, authcfg);

    QString schema = QStringLiteral("china");
    QString tablename = QStringLiteral("bou2_4p");
    QString geometrycol = QStringLiteral("geom");

    uri.setDataSource(schema, tablename, geometrycol);

    QgsVectorLayer::LayerOptions options;
    options.loadDefaultStyle = false;

    QgsVectorLayer *vectorLayer = new QgsVectorLayer(uri.uri(false), uri.table(), "postgres", options);
    QgsProject::instance()->addMapLayer(vectorLayer);
    m_layers.append(vectorLayer);

    m_mapCanvas->setLayers(m_layers);
    m_mapCanvas->setVisible(true);
    m_mapCanvas->zoomToFullExtent();
    m_mapCanvas->freeze(false);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值