首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

VS2010编译器正常设置,但是却不抛出错误

2013-12-13 
求助:VS2010编译器正常设置,但是却不抛出异常如图,这是默认的异常设置程序运行的时候,明明出现了异常,但是

求助:VS2010编译器正常设置,但是却不抛出异常
如图,这是默认的异常设置
VS2010编译器正常设置,但是却不抛出错误

程序运行的时候,明明出现了异常,但是编译器却没有任何提示,只在不用编译器单独执行程序的时候操作系统会报错,这是怎么回事?而且我把编译器覆盖重装了一遍也还是这样,这到底是怎么回事啊?
VS2010编译器正常设置,但是却不抛出错误
[解决办法]
当你MouseUp的时候 g.Dispose();释放了  所以执行下面语句会出错


for (int i = 1; i < arr.Count; i++)
    g.DrawLine(Pens.Red, (Point)arr[i - 1], ((Point)arr[i]));
 
[解决办法]
你代码可以这样简化

public partial class Form1 : Form
    {
        IList<Point> arr;
        public Form1()
        {
            InitializeComponent();

            DoubleBuffered = true;
            arr = new List<Point>();
        }

        private void Form1_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                arr.Add(new Point(e.X, e.Y));
                this.Invalidate();
            }
        }

        protected override void OnPaint(PaintEventArgs e)
        {
            base.OnPaint(e);
            if (arr.Count == 1)
            {
                e.Graphics.FillRectangle(Brushes.Red, arr[0].X, arr[0].Y, 1, 1);
            }
            else
            {
                for (int i = 1; i < arr.Count; i++)
                    e.Graphics.DrawLine(Pens.Red, arr[i - 1], arr[i]);
            }
        }
    }

热点排行