private void imageBox1_MouseUp(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { _isLeftMouseDown = false; if (SelectRoi != null) { SelectRoi.MouseUp(e, imageBox1); } imageBox1.Cursor = Cursors.Default; } else if (e.Button == MouseButtons.Right) { } this.OnMouseUp(e); }
private void imageBox1_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) {//选中ROI _isLeftMouseDown = true; var imagePt = imageBox1.PointToImage(e.Location); if (imageBox1.Cursor == Cursors.Default) { var roirect = _roiElements.Where(x => x.Visible && x.Enable && x.Contains(imagePt.X, imagePt.Y) || (x.HitTest(e.Location) != null && x.HitTest(e.Location).Anchor != DragHandleAnchor.None)).OrderBy(x => x.AreaValue()).FirstOrDefault(); var imagerect = _roiImageElements.Where(x => x.Visible && x.Enable && x.Contains(imagePt.X, imagePt.Y) || (x.HitTest(e.Location) != null && x.HitTest(e.Location).Anchor != DragHandleAnchor.None)).OrderBy(x => x.AreaValue()).FirstOrDefault(); if (roirect == null) { SelectRoi = imagerect; } else if (imagerect == null) { SelectRoi = roirect; } else { SelectRoi = roirect.AreaValue() <= imagerect.AreaValue() ? roirect : imagerect; } _roiElements.ForEach(x => x.Selected = false); _roiImageElements.ForEach(x => x.Selected = false); } if (SelectRoi != null) { SelectRoi.Selected = true; SelectRoi.MouseDown(e, imageBox1); } else { imageBox1.Invalidate(); } } else if (e.Button == MouseButtons.Right) { } this.OnMouseDown(e); }
private void imageBox1_MouseMove(object sender, MouseEventArgs e) { SetXYText(e.Location); SetRGBText(e.Location); if (e.Button == MouseButtons.Left) {//操作ROI if (SelectRoi != null) { SelectRoi.MouseMove(e, imageBox1); } } else if (e.Button == MouseButtons.Right) { } else if (e.Button == MouseButtons.None) { if (SelectRoi != null) { SelectRoi.MouseMove(e, imageBox1); } } this.OnMouseMove(e); }