• Qt 环境下MAPX组件的编程


    使用mapx打包文件可以方便的迅速开发,今天介绍一种不使用打包文件,直接使用mapx组件的编程方法。

    就像之前介绍flash控件编程的方法,首先建立一个qt demo.基于那个的窗口都可以。

    本deno主要是画一个符号:

    QAxWidget *mapx = new QAxWidget(this ,0);//创建一个mapx对象
    mapx->move(30,30); //设置距离主窗口左上角的位置
    mapx->resize(300, 300); //设置mapx组件的大小

    mapx->setControl(QString::fromUtf8("{87c293c8-44b3-49a4-8ee8-ea6dfc572ded}"));

    //创建层"aaa"
    QAxObject *pLayers = mapx->querySubObject("Layers");
    QAxObject *pLayer = pLayers->querySubObject("CreateLayer(QString)", "aaa");

    QAxObject *pFeatureFactory = mapx->querySubObject("FeatureFactory");
    // 画一个符号
    QAxObject *pSymbol = pFeatureFactory->querySubObject("CreateSymbol");
    QAxObject *pPoint = pSymbol->querySubObject("Point");
    pPoint->dynamicCall("Set(double, double)", 120.06872,29.35692);
    pLayer->dynamicCall("AddFeature(QVariant)", pSymbol->asVariant());

    mapx->dynamicCall("ZoomTo(double, double, double)", 3, 120.06872,29.35692);//这里的经纬度坐标要和上边符号设置的经纬度坐标一致,否则代码运行出来可能看不到符号

    注意:字符串都是mapx累的一些方法或者属性

    照猫画虎其它任何组件应该都会写代码了

    作者:first_semon
             
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如有问题,欢迎交流
  • 相关阅读:
    CMake 手册详解(十九)
    CMake 手册详解(二十三)
    CMake 手册详解(二十)
    xtrabackupex xbstream 流备份还原(转载)
    xtrabackup 安装与使用(转载)
    怎么样写好一篇技术博客
    python为什么需要符号表
    cmake的一些基本概念及源码结构
    让IT工作者过劳的13个坏习惯
    SHTML和HTML的区别
  • 原文地址:https://www.cnblogs.com/first-semon/p/5868360.html
Copyright © 2020-2023  润新知