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
     
  • 相关阅读:
    barcode制作条形码及破解
    软件敏捷架构师
    软件需求分析三步走
    GDI+显示GIF动画
    CSpinButtonCtrl的弱智问题
    [C++] STL里面的map
    [C#] 再议Exception
    [C++] unsigned是麻烦制造者
    用GDI+转BMP为WMF、EXIF、EMF格式
    [C++] 编译时的warning
  • 原文地址:https://www.cnblogs.com/jetz/p/162451.html
Copyright © 2011-2022 走看看