源码:https://github.com/sueRimn/ArcGIS-for-qml-demos

实现地图上鼠标点击后添加自由文本功能

作者: 狐狸家的鱼

Github: 八至

版权声明:如需转载,请联系获得授权或者附上原文链接

(没有录进鼠标)效果如下:

要想在地图上添加标注和图形,必须了解图层的概念。

怎么建立会在单独一篇博客中讲解。

这里在地图上实现添加自由文本的功能,操作过程是在地图上任意一个地方点击,然后点击添加文本按钮,弹出一个输入框,输入想要输入的文字后回车,文本就会出现在地图上点击的地方。关于添加文本的字体大小、颜色,这个以后会在完善后更新博客。

1.添加需要的组件-地图、按钮、输入框

实现什么功能必须先弄清楚需要哪些操作,顺序是什么,在这里,是在地图的左上方布局一个按钮,输入框可以在按钮的下方,首先做好布局

2.添加承载文本的图层

只需要记住,每个符号、图形、图片、点等都需要在GraphicsOverlay里添加,不同的图形添加在对应各种的图形层上,也可以使用js进行创建

核心代码如下:

//容纳文本的图层
GraphicsOverlay{
id:textGraphicOverlay
//文本图形
}
onMouseClicked: {
addTextPoint = mouse.mapPoint
console.log("添加文本坐标点:",addTextPoint)
textIpt.visible = true;
textSymbol = ArcGISRuntimeEnvironment.createObject("TextSymbol")
textSymbol.size = 15;
textSymbol.color = "yellow";
textGraphicOverlay.graphics.append(createGraphic(addTextPoint,textSymbol))
}
}
Button{
id:addTextBtn
anchors{
top:mapView.top
left: mapView.left
margins: 5
} width: 100
height: 45
text: "addText"
onClicked: textIpt.visible = true
}
TextField{
id:textIpt
visible: false
anchors{
top:addTextBtn.bottom
left: mapView.left
margins: 5
}
width: 100
height: 40
Keys.enabled: true
Keys.onReturnPressed: {
textSymbol.text = textIpt.text
textIpt.text = ""
textIpt.visible = false }

关于鼠标点击两点进行测距在另一篇博文:《ArcGIS for qml 测距》

作者:狐狸家的鱼

本文链接:https://www.cnblogs.com/suRimn/p/9849195.html

声明:如需转载请联系作者或者附上原文链接

ArcGIS for qml -添加自由文本的更多相关文章

  1. OpenLayers学习笔记(三)— QML与HTML通信之 地图上点击添加自由文本

    实现在地图随意点击,弹出文本输入框,输入任意文字,完成自由文本添加的功能 作者: 狐狸家的鱼 GitHub:八至 本文链接:地图上点击添加自由文本 关于如何QML与HTML通信已经在上一篇文章 QML ...

  2. ArcGIS for qml -测距

    源码:https://github.com/sueRimn/ArcGIS-for-qml-demos 实现求地图上两点之间距离功能 作者: 狐狸家的鱼 Github: 八至 版权声明:如需转载,请联系 ...

  3. Arcgis for qml - 鼠标拖拽移动

    以实现鼠标拖拽文本图层为例 GitHub:ArcGIS拖拽文本 作者:狐狸家的鱼 目的是利用鼠标进行拖拽. 实现两种模式,一种是屏幕上的拖拽,第二种是地图上图层的挪动. 屏幕上的拖拽其实跟ArcGIS ...

  4. jquery删除添加输入文本框

    效果体验:http://hovertree.com/texiao/jquery/67/ 效果图: 参考:http://hovertree.com/h/bjaf/traversing_each.htm ...

  5. ArcGIS for qml - 地址地标转换为经纬度(地理编码)

    实现输入地址地标转换为其经纬度 本文链接:地理编码 作者: 狐狸家的鱼 Github: 八至 一.地理编码 1.地理编码含义 地址编码(或地理编码)是使用地址中包含的信息来插入地图上的相应位置的过程. ...

  6. Django xadmin后台添加富文本编辑器UEditor的用法

    效果图: 步骤: 1.利用命令:pip install DjangoUeditor,安装DjangoUeditor,但由于DjangoUeditor没有python3版本的,从的Github上把修改好 ...

  7. arcgis for javascript 添加featurelayer,设置地图最大最小等级

    转自原文arcgis for javascript 添加featurelayer,设置地图最大最小等级 var map; var livingCenter; var livingCenterUrl = ...

  8. ArcGIS Engine中添加点、线、面元素

    转自原文 ArcGIS Engine中添加点.线.面元素 此种方式为IElement的方式在axMapControl的GraphicsContainer中好绘制图形. //画点 IPoint pt = ...

  9. ArcGIS for qml -关于空间参考如何选择设置

    作者: 狐狸家的鱼 Github: 八至 版权声明:如需转载请获取授权和联系作者 1.关于空间参考 空间参考可以通过众所周知的ID(WKID) - 整数值来引用. 官网指南中也有对此的专门说明 htt ...

随机推荐

  1. [转帖]SAP一句话入门:Sales and Distribution

    SAP一句话入门:Sales and Distribution http://blog.vsharing.com/MilesForce/A616565.html SD是Sales and Distri ...

  2. PL/SQL编程--变量声明及赋值

    declare v_price ,);--单价 v_usenum number;--水费字数 v_usenum2 number;--使用吨数 begin v_price:=2.45;--每吨单价 v_ ...

  3. taro实战1

    npm install -g @tarojs/cli //或 yarn global add @tarojs/cli

  4. 前K个高频元素

    给定一个非空的整数数组,返回其中出现频率前 k 高的元素. 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], ...

  5. maven中jar下载失败

    关键词:maven jar 错误描述:反编译时遇到 invalid LOC header (bad signature)的问题 aether-89969cb8-5741-44e3-be2c-74f90 ...

  6. linux audit审计(2)--audit启动

    参考:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/security_guide/sec- ...

  7. html class选择器与id选择器

    class选择器: <p class="p1"> .p1{ color:red; ..... } id选择器: <p id="p2"> ...

  8. telerik reporting报表

    Telerik Reporting是一个非常人性化的控件,一个报表的生成几乎不用写代码,都是通过"所见即所得"模式完成.由于客户需要在实际的项目中运用Telerik Reporti ...

  9. 提交已经注入文件的表单给后台上传图片 使用ajaxsubmit

  10. Nginx TSL/SSL优化握手性能

    L:131