当前位置:软件学习 > 其它软件 >>

求VS2005+MapInfo设置多边形区域源码

  各位大虾们,小弟初学MapInfo,对很多操作都不熟悉,所以想请各位给我一个源码参考一下。另外我还有一个疑问就是,我原先查看帮助当中的C++示例,然后根据里面写的时候报了很多错误,下面的是其中几个:
1.错误 3 “MapXLib.CMapXFeature”并不包含“CreateDispatch”的定义
2.错误 2 “MapXLib.CMapXPoints”并不包含“AttachDispatch”的定义
3.错误 4 “MapXLib.CMapXFeature”并不包含“GetClsid”的定义
4.错误 6 “MapXLib.CMapXFeature”并不包含“SetType”的定义
5.错误 7 “MapXLib.CMapXFeature”并不包含“GetStyle”的定义
6.错误 12 “MapXLib.CMapXFeature”并不包含“GetParts”的定义
我现在急需答案,希望各位大侠们不吝赐教!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --------------------编程问答-------------------- 1.MapXLib添加引用了么?
2.MapXLib注册了没?
3.看看你写法有问题没?
不行的话你把代码贴上来让大家看看吧!
--------------------编程问答--------------------   //绘制多边形区域
        private void CreatePolygon(AxMapXLib.AxMap axmap, short toolnum, long flags, object points)
        {
            AnimationLayer= axmap.Layers.AnimationLayer;
                       
            if (flags == 0)//开始使用多边形工具,先删除以前的图元
            {
                foreach (MapXLib.Feature a in AnimationLayer.AllFeatures)
                {
                    AnimationLayer.DeleteFeature(a);
                }
                //if (toolnum == 11)
                //{
                //    pnts.AttachDispatch(points, false);
                //}
            }
            else if (flags == 3)//使用多边形工具
            {
                //if (toolnum == 11)
                //{
                //    pnts.AttachDispatch(points, false);
                //}
            }
            else if(flags==2||flags==1)//结束多边形工具使用
            {
            //    if (toolnum == 11)
            //    {                   
            //        pnts.AttachDispatch(points, false);

            //        if (!f.CreateDispatch(f.GetClsid()))
            //        {
            //            return;
            //        }
            //        try
            //        {
            //            f.Attach(axmap.GetDispatch());

            //            // 设置多边形的样式
            //            f.SetType(MapXLib.FeatureTypeConstants.miFeatureTypeRegion);
            //            f.GetStyle().SetRegionPattern(MapXLib.FillPatternConstants.miPatternSolid);
            //            f.GetStyle().SetRegionColor(255);
            //            f.GetStyle().SetRegionBorderColor(0);
            //            f.GetStyle().SetRegionBorderWidth(2);
            //            f.GetStyle().SetRegionBorderStyle(1);

            //            // 现在使用由事件为我提供的点
            //            f.GetParts().Add(pnts);
            //            axmap.GetLayers().Item(1).AddFeature(f);
            //        }
            //        catch (Exception e)
            //        {
            //            throw e;
            //        }
            //    }
            }
        }   
MapXLib添加引用,也注册过了              
补充:企业软件 ,  地理信息系统
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,