日期:2014-05-17  浏览次数:20715 次

如何取消在picturebox上绘制的矩形
 public void SetSelect(bool value)
        {
            if (beSelected != value)
            {
                beSelected = value;
            }
            if (beSelected)
            {
                Graphics g = this.CreateGraphics();
                Pen myPen = new Pen(Brushes.Black, 2);
                myPen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot;
                g.DrawRectangle(myPen, 0, 0, this.Width, this.Height);
            }
        }

我通过这个函数,在picturebox上绘制了个矩形(this就是picturebox)
当我鼠标点击画板上的某一个picturebox时,显示矩形,代表这个picturebox被选中

那怎么取消这个矩形呢?我想当我鼠标点击的不是picturebox时,比如说画板(panel)时候,取消选中。

------解决方案--------------------
为什么不在GotFocus和LostFocus事件中处理呢?而且你这个只要在绘制的时候根据焦点画一下就好了。
------解决方案--------------------
不好意思看错了,PictureBox不能设焦点,你这是模拟的。