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累的一些方法或者属性

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

转载于:https://www.cnblogs.com/first-semon/p/5868360.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值