⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mapobject学习笔记-第五讲 mo图形的绘制_魏国强 的 博客.htm

📁 MO+VC的学习文档资料
💻 HTM
📖 第 1 页 / 共 5 页
字号:
      MO<SPAN>虽然不是绘图软件,但经常要用到在地图上画点标明位置,画矩形或多边形标明地图查询范围等操作,因此也需要用到一些基本的绘图功能。</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>MO</SPAN><SPAN>的绘图就是在</SPAN><SPAN>MAP</SPAN><SPAN>上产生图形对象的过程,图形对象主要有:</SPAN><SPAN>Point</SPAN><SPAN>(点),</SPAN><SPAN>Points</SPAN><SPAN>(点集)、</SPAN><SPAN>Line</SPAN><SPAN>(线)、</SPAN><SPAN>Rectangle</SPAN><SPAN>(矩形)、</SPAN><SPAN>Polygon</SPAN><SPAN>(多边形)、</SPAN><SPAN>Ellipse</SPAN><SPAN>(椭圆)。</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>绘图时,先要创建一个绘图对象,给他赋值(位置和尺寸),再在</SPAN><SPAN>Symbol</SPAN><SPAN>对象中定义显示方式,最后用</SPAN><SPAN>Drawshape</SPAN><SPAN>方法在地图上显示这个图形。</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>定义</SPAN><SPAN>Symbol</SPAN><SPAN>对象,不仅可以设置线型、填充方式、尺寸、颜色和字体等,还可以画出多种预定义的符号。</SPAN><SPAN>Drawshape</SPAN><SPAN>方法绘图外,还可以用</SPAN><SPAN>AddEvent</SPAN><SPAN>方法在动态图层上画动态图形对象(</SPAN><SPAN>GeoEvent</SPAN><SPAN>)。另外还可以用</SPAN><SPAN>DrawText</SPAN><SPAN>方法在地图上写字。</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><STRONG style="mso-bidi-font-weight: normal"><SPAN 
      style="FONT-SIZE: 12pt">一、</SPAN></STRONG><STRONG 
      style="mso-bidi-font-weight: normal"><SPAN 
      style="FONT-SIZE: 12pt">DrawShape</SPAN></STRONG><STRONG 
      style="mso-bidi-font-weight: normal"><SPAN 
      style="FONT-SIZE: 12pt">绘图方法</SPAN></STRONG></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><STRONG 
      style="mso-bidi-font-weight: normal"><SPAN>1</SPAN></STRONG><STRONG 
      style="mso-bidi-font-weight: normal"><SPAN>、</SPAN><SPAN>DrawShape</SPAN></STRONG><STRONG 
      style="mso-bidi-font-weight: normal"><SPAN>定义</SPAN></STRONG></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>DrawShape</SPAN><SPAN>方法的语法为:</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>object.DrawShape shape, symbol</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>其中,</SPAN><SPAN>object</SPAN><SPAN>:为绘图目的对象,一般为</SPAN><SPAN>Map</SPAN><SPAN>对象;</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>shape</SPAN><SPAN>:为绘图内容,是图形对象(</SPAN><SPAN>Point, Points, 
      Line, Rectangle, Polygon or 
      Ellipse</SPAN><SPAN>)或记录集(</SPAN><SPAN>Recordset</SPAN><SPAN>)对象;</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>symbol</SPAN><SPAN>:是一个</SPAN><SPAN>Symbol</SPAN><SPAN>对象,说明绘图方式。</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>注意:调用</SPAN><SPAN>DrawShape</SPAN><SPAN>必须在</SPAN><SPAN>LAYER</SPAN><SPAN>或</SPAN><SPAN>TrackingLayer</SPAN><SPAN>的</SPAN><SPAN>drawing</SPAN><SPAN>事件中,即</SPAN><SPAN>AfterTrackingLayerDraw</SPAN><SPAN>,</SPAN><SPAN>BeforeLayerDraw</SPAN><SPAN>,</SPAN><SPAN>BeforeTrackingLayerDraw</SPAN><SPAN>,</SPAN><SPAN>AfterLayerDraw</SPAN><SPAN>事件过程中才有效。</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>如果指定一个</SPAN><SPAN>Recordset</SPAN><SPAN>作为</SPAN><SPAN>DrawShape</SPAN><SPAN>的参数,该数据集必须是从</SPAN><SPAN>GeoDataset</SPAN><SPAN>获取,而不是从一个</SPAN><SPAN>Table</SPAN><SPAN>对象获取,同时</SPAN><SPAN>MO</SPAN><SPAN>从</SPAN><SPAN>shape</SPAN><SPAN>字段的第一个特征值开始,到最后一个结束,然后又指向第一个记录。</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><STRONG 
      style="mso-bidi-font-weight: normal"><SPAN>2</SPAN></STRONG><STRONG 
      style="mso-bidi-font-weight: normal"><SPAN>、画点</SPAN></STRONG></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>(</SPAN><SPAN>1</SPAN><SPAN>)预定义画点:可以用</SPAN><SPAN>Point</SPAN><SPAN>对象画一个点,也可以用</SPAN><SPAN>Points</SPAN><SPAN>对象画多个点。示例:</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      sym As New MapObjects2.Symbol</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim p 
      As Point</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      pts As Points</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Private Sub Map1_AfterTrackingLayerDraw(ByVal hDC As 
      stdole.OLE_HANDLE)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set 
      pts = New Points</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set p 
      = Map1.ToMapPoint(1000, 1000)</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>pts.Add 
      p'</SPAN><SPAN>是</SPAN><SPAN>Points</SPAN><SPAN>对象中的一个函数,功能是增加一个</SPAN><SPAN>Point</SPAN><SPAN>成员到</SPAN><SPAN>Points</SPAN><SPAN>对象内。</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set p 
      = Map1.ToMapPoint(3000, 2000)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>pts.Add p</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.Color = moRed</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.SymbolType = moPointSymbol</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.Size = 3</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Map1.DrawShape pts, sym</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      Sub</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>(</SPAN><SPAN>2</SPAN><SPAN>)利用鼠标点击画点:通过鼠标点击屏幕获取点的坐标,进行画点操作。示例:</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      sym As New MapObjects2.Symbol</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim p 
      As Point</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      pts As New Points</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Private Sub Map1_AfterTrackingLayerDraw(ByVal hDC As 
      stdole.OLE_HANDLE)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>If 
      Not pts Is Nothing Then</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.Color = moRed</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.SymbolType = moPointSymbol</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.Size = 3</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Map1.DrawShape pts, sym</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>Map1.DrawShape pts, 
      sym</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      If</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      Sub</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Private Sub Map1_MouseDown(Button As Integer, Shift As Integer, X 
      As Single, Y As Single)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2><SPAN 
      style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>Set p = Map1.ToMapPoint(X, 
      Y)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>pts.Add p</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>Map1.TrackingLayer.Refresh True’ 
      TrackingLayer</SPAN><SPAN>对象是</SPAN><SPAN>MAP</SPAN><SPAN>控件中的一个图层,它描述位置可以动态改变的地理目标,</SPAN><SPAN>Refresh</SPAN><SPAN>是</SPAN><SPAN>TrackingLayer</SPAN><SPAN>对象的成员函数,强制刷新</SPAN><SPAN>TrackingLayer</SPAN><SPAN>对象。</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      Sub</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><STRONG><SPAN>3</SPAN><SPAN>、画线</SPAN></STRONG></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>MO</SPAN><SPAN>中画线的基本原理是先设置两个点,将他们添加到一个</SPAN><SPAN>Points</SPAN><SPAN>对象中,再将</SPAN><SPAN>Points</SPAN><SPAN>对象放到一个</SPAN><SPAN>Line</SPAN><SPAN>对象中,使用</SPAN><SPAN>DrawShape</SPAN><SPAN>方法就可以画出一条线段来。如果在</SPAN><SPAN>Points</SPAN><SPAN>对象中有</SPAN><SPAN>N</SPAN><SPAN>个点,则可以产生一条</SPAN><SPAN>N-1</SPAN><SPAN>段的折线。</SPAN></FONT></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>(</SPAN><SPAN>1</SPAN><SPAN>)预定义点画线,示例:</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      g_line As MapObjects2.Line</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      pts As Points</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim p 
      As Point</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      sym As Symbol</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Private Sub Command1_Click()</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set 
      g_line = New MapObjects2.Line</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set 
      pts = New Points</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set p 
      = Map1.ToMapPoint(1000, 1000)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>pts.Add p</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set p 
      = Map1.ToMapPoint(2000, 3000)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>pts.Add p</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>g_line.Parts.Add pts 
      'Parts</SPAN><SPAN>是</SPAN><SPAN>Line</SPAN><SPAN>对象的一个属性,此属性指向一个</SPAN><SPAN>Parts</SPAN><SPAN>集合对象,通过</SPAN><SPAN>Parts</SPAN><SPAN>属性可以检索组成线的片断(</SPAN><SPAN>Parts</SPAN><SPAN>),而</SPAN><SPAN>Parts</SPAN><SPAN>的每一个成员是一个点集(</SPAN><SPAN>Points</SPAN><SPAN>)。</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set 
      pts = g_line.Parts(0)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Map1.Refresh</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      Sub</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Private Sub Map1_AfterTrackingLayerDraw(ByVal hDC As 
      stdole.OLE_HANDLE)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>If 
      Not g_line Is Nothing Then</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      sym As New Symbol</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>If pts.Count &gt; 1 Then’ 
      Count</SPAN><SPAN>属性表示当前</SPAN><SPAN>Points</SPAN><SPAN>对象内成员的数目,这是一个只读值。</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.Color = moRed</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.SymbolType = moLineSymbol</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.Size = 5</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Map1.DrawShape g_line, sym</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      If</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      If</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      Sub</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>(</SPAN><SPAN>2</SPAN><SPAN>)鼠标点击获取点并画线,示例:</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      g_line As MapObjects2.Line</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      pts As Points</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim p 
      As Point</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      sym As Symbol</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><FONT 
      size=2><SPAN>Private Sub 
      Command1_Click()’</SPAN><SPAN>设置清空按钮</SPAN></FONT></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set 
      g_line = Nothing</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Set 
      pts = Nothing</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Map1.Refresh</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>End 
      Sub</FONT></SPAN></P>
      <P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Private Sub Map1_AfterTrackingLayerDraw(ByVal hDC As 
      stdole.OLE_HANDLE)</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>Dim 
      sym As New Symbol</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>If 
      Not g_line Is Nothing Then</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>sym.Color = moBlack</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT 
      size=2>Map1.DrawShape pts, sym</FONT></SPAN></P>
      <P class=MsoNormal 
      style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21.75pt"><SPAN><FONT size=2>If 
      pts.Count &gt; 1 Then</FONT></SPAN></P>
      <P class=MsoNormal 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -