• AE异常之——代码不访问


    最近学习ArcEngine开发遇到了奇怪的异常,代码不访问。检查了好几次,代码在我这半路出家的人看来没有逻辑错误,但是就是没有画线。逐步运行的时候,发现运行至绿色的代码的地方就跳出了本过程。检查再三,在绿色的代码处加上了try{ }  catch{ } ,终于抛出了异常。异常为“未将对象引用设置到对象的实例”。 检查发现,异常设置的复选框没有选中(如下所示)(不知道为什么不是默认选中的),VS不自动的抛出异常,只是遇到了无法解决的问题自动跳出了过程。抛出异常后,错误就比较容易修改了。将错误处的语句改为 :IPolyline pDrawPolyline = new ESRI.ArcGIS.Geometry.PolylineClass();  

    并将引发异常的复选框全部选中。

    bool DrawPolylineOrNot = false;    //是否画线

            int DrawPolylineClickCount;    //记录画线时候画的是第几个点

            IPolyline pDrawPolyline = null;    //错误

     private void axMapControl1_OnMouseDown(object sender, ESRI.ArcGIS.Controls.IMapControlEvents2_OnMouseDownEvent e)

            {

                if (e.button == 1)

                {

                    IPoint pPoint = new PointClass();

                    pPoint.PutCoords(e.mapX, e.mapY);

                    //绘制剖面用的曲线

                    if (DrawPolylineOrNot)

                    {

                        //第一次点击,设置起始点

                        if (DrawPolylineClickCount == 0)

                        {

                                pDrawPolyline.FromPoint = pPoint;

                            DrawPolylineClickCount++;

                        }

                        else if (DrawPolylineClickCount == 1)

                        {

                            pDrawPolyline.ToPoint = pPoint;

                            DrawPolylineClickCount = 0;

                            DrawPolylineOrNot = false;

                            axMapControl1.DrawShape(pDrawPolyline);

                            axMapControl1.Refresh();

                        }

                    }

                }

            }

  • 相关阅读:
    国外C#开源系统一览表
    国外的开源的CMS系统(ASP.Net_c#)
    CSS简写方法说明
    比较著名的.net技术论坛网址(含国外的)
    :domino用户的新邮件不出现在$Inbox(收件箱),但可以在'所有文档'视图中看到
    Domino邮件记录
    Lotus notes685升级安装设置
    Lotus 与 Exchange 对比评测
    Domino维护与监控
    用户在notes和shmail禁用离开办公室后,为何离开办公室代理依然运行
  • 原文地址:https://www.cnblogs.com/DayDreamEveryWhere/p/2457807.html
Copyright © 2020-2023  润新知