ScreenToGif.Pages.Crop.pictureCrop_MouseMove C# (CSharp) Метод

pictureCrop_MouseMove() приватный Метод

private pictureCrop_MouseMove ( object sender, MouseEventArgs e ) : void
sender object
e MouseEventArgs
Результат void
        private void pictureCrop_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                if (e.X > _posX && e.Y > _posY)
                {
                    _width = Math.Abs(e.X - _posX);
                    _height = Math.Abs(e.Y - _posY);
                }
                else if (e.X < _posX && e.Y < _posY)
                {
                    _width = Math.Abs(_posX - e.X);
                    _height = Math.Abs(_posY - e.Y);

                    _posXmove = e.X;
                    _posYmove = e.Y;
                }
                else if (e.X < _posX && e.Y > _posY) // top right to bottom left
                {
                    _width = Math.Abs(_posX - e.X);
                    _height = Math.Abs(_posY - e.Y);

                    _posXmove = e.X;
                }
                else if (e.X > _posX && e.Y < _posY) // bottom left to top right
                {
                    _width = Math.Abs(_posX - e.X);
                    _height = Math.Abs(_posY - e.Y);

                    _posYmove = e.Y;
                }
                else
                {
                    return;
                }

                this.Text = Resources.Title_Crop;
                tbWidth.Text = _width.ToString();
                tbHeight.Text = _height.ToString();

                _g.DrawImage(_bitmap, 0, 0);
                Rectangle = new Rectangle(_posXmove, _posYmove, _width, _height);
                _g = pictureCrop.CreateGraphics();
                _g.DrawRectangle(_pen, Rectangle);
            }
        }