zoukankan      html  css  js  c++  java
  • Mapx自带的工具的理解

             Mapx自带了很多工具,可以轻松实现mi中很多的功能。但一进入具体应用,仍然有很多的问题。

             1、能直接用的:选择,缩放

             2、稍微加点东西的:四种加入工具:miAddPointTool,miAddLineTool,miAddPolylineTool,miAddRegionTool。它们在使用时需要说明插入层:
                          Set Map1.Layers.InsertionLayer = Map1.Layers.Item("标注")
             3、其实没有用的:miSymboltool,miTexttool等,都是往Annotations层上加的东西,无法被修改,无法被保存。
             对于点、线、面、文字都可以修改样式。可以对层,也可以对图元。以前都是用的对层的修改,无法保存。
              Set sty = Map1.Layers.Item("标注").Style.Clone
              sty.PickLine
              Set Map1.Layers.Item("标注").Style = sty
              Map1.Layers.Item("标注").OverrideStyle = True
             4、如果要对图元修改样式,就可以把样式具体到每一个图元,而且可以保存,一般代码是:
              Map1.Layers.Item("标注").OverrideStyle = False
              Set sty = gFtr.Style.Clone
              sty.PickLine
              Set gFtr.Style = sty
              gFtr.Update

             5、对于文本,由于不能直接使用miTexttool,所以采用间接的方式,弹出对话框询问文字内容,再用FeatureFactory创建。

          sss = InputBox("请输入要添加的文字?")
          If sss <> "" Then
            Dim txtftr As Feature
            Dim pt As New MapXLib.Point
            pt.Set Map1.CenterX, Map1.CenterY
            Set txtftr = Map1.FeatureFactory.CreateText(pt, sss)
            txtftr.Attach Map1
            Set txtftr = Map1.Layers.Item("标注").AddFeature(txtftr)
            Map1.Layers.Item("标注").Selection.SelectByID txtftr.FeatureID, 0
          End If
     
  • 相关阅读:
    求最低价格
    A*算法入门
    hdu 4715
    手动扩大栈内存,让AC无忧
    hdu 4710
    hdu 1698
    poj3468区间延迟更新模板题
    hdu 1059二进制优化背包问题
    2059龟兔赛跑
    水1276
  • 原文地址:https://www.cnblogs.com/jetz/p/162451.html
Copyright © 2011-2022 走看看