private void AscanToolLayout_MouseDown(object sender, MouseEventArgs e) { ///确定鼠标状态 if (e.Button == MouseButtons.Left) { MouseLeftIsDown = true; switch (MouseState) { case "RefX": SetAllDisable(); ReferenceC.SelectedX = true; break; case "RefY": SetAllDisable(); ReferenceC.SelectedY = true; break; case "MeaX": SetAllDisable(); MeasureC.SelectedX = true; break; case "MeaY": SetAllDisable(); MeasureC.SelectedY = true; break; } if (MouseState.Contains("0")) { SetAllDisable(); gate0.Selected = true; } if (MouseState.Contains("1")) { SetAllDisable(); gate1.Selected = true; } if (MouseState.Contains("2")) { SetAllDisable(); gate2.Selected = true; } if (MouseState.Contains("3")) { SetAllDisable(); gate3.Selected = true; } LastMouseState = MouseState; } ///新建缩放区域,准备画图 if (MouseIsInControl && MouseState == "+") { zoomRegion = new ZoomRegion(); zoomRegion.p0 = e.Location; } }
private void LongSrtipToolLayout_MouseUp(object sender, MouseEventArgs e) { ///重置缩放区域 if (zoomRegion != null && zoomRegion.width != 0 && zoomRegion.height != 0 && !MouseIsDoubleClick) { FigCursors ft = new FigCursors(); InitialFigCursors(ref ft); ft.XPixel = zoomRegion.minX; ft.YPixel = zoomRegion.minY; float sx = ft.X; float ey = ft.Y; int xa = ft.XPixel; int ya = ft.YPixel; ft.XPixel = zoomRegion.minX + zoomRegion.width - 1; ft.YPixel = zoomRegion.minY + zoomRegion.height - 1; float ex = ft.X; float sy = ft.Y; int xb = ft.XPixel; int yb = ft.YPixel; /*Console.WriteLine(new Rectangle(xa, ya, xb - xa, yb - ya)); * Console.WriteLine("sx=" + sx.ToString()); * Console.WriteLine("ex=" + ex.ToString()); * Console.WriteLine("sy=" + sy.ToString()); * Console.WriteLine("ey=" + ey.ToString());*/ if (xb > xa & yb > ya) { StartX = sx; EndX = ex; StartY = sy; EndY = ey; RangeChanged?.Invoke(new float[] { StartX, EndX, StartY, EndY, zoomRegion.minX, zoomRegion.minY, zoomRegion.width, zoomRegion.height }); } } zoomRegion = null; Invalidate(); ///重置光标选定信息和状态信息 MouseLeftIsDown = false; MouseState = "+"; }
private void UltraToolLayout_MouseDown(object sender, MouseEventArgs e) { ///确定鼠标状态 if (e.Button == MouseButtons.Left) { MouseLeftIsDown = true; switch (MouseState) { case "RefX": RefCursor.xSelected = true; if (MeaCursor != null) { MeaCursor.Selected = false; } break; case "RefY": RefCursor.ySelected = true; if (MeaCursor != null) { MeaCursor.Selected = false; } break; case "MeaX": MeaCursor.xSelected = true; if (RefCursor != null) { RefCursor.Selected = false; } break; case "MeaY": MeaCursor.ySelected = true; if (RefCursor != null) { RefCursor.Selected = false; } break; } LastSelectedCursor = MouseState; } ///新建缩放区域,准备画图 if (MouseIsInControl && MouseState == "+") { zoomRegion = new ZoomRegion(); zoomRegion.p0 = e.Location; } }
private void LongSrtipToolLayout_MouseDown(object sender, MouseEventArgs e) { ///确定鼠标状态 if (e.Button == MouseButtons.Left) { LastMouseState = MouseState; } ///新建缩放区域,准备画图 if (MouseIsInControl) { zoomRegion = new ZoomRegion(); zoomRegion.p0 = e.Location; } }
private void UltraToolLayout_MouseUp(object sender, MouseEventArgs e) { ///重置缩放区域 if (zoomRegion != null && zoomRegion.width != 0 && zoomRegion.height != 0) { FigCursor ft = new FigCursor(); ResetCurrentCursor(ft, zoomRegion.minX, zoomRegion.minY); double sx = ft.pdata.X; double ey = ft.pdata.Y; int xa = ft.p.X; int ya = ft.p.Y; ResetCurrentCursor(ft, zoomRegion.minX + zoomRegion.width - 1, zoomRegion.minY + zoomRegion.height - 1); double ex = ft.pdata.X; double sy = ft.pdata.Y; int xb = ft.p.X; int yb = ft.p.Y; startX = sx; endX = ex; startY = sy; endY = ey; Console.WriteLine(new Rectangle(xa, ya, xb - xa, yb - ya)); Console.WriteLine("sx=" + sx.ToString()); Console.WriteLine("ex=" + ex.ToString()); Console.WriteLine("sy=" + sy.ToString()); Console.WriteLine("ey=" + ey.ToString()); if (xb > xa & yb > ya) { RangeChanged?.Invoke(new float[] { xa, ya, xb - xa, yb - ya, (float)sx, (float)ex, (float)sy, (float)ey }); } } zoomRegion = null; ///1 鼠标双击时,设置光标,并获取当前光标相对位置 ///2 重置双击状态 if (MouseIsDoubleClick) { kx = (_ex - _sx) / (Width - 1.0); ky = (_sy - _ey) / (Height - 1.0); if (e.Button == MouseButtons.Left) { InitalCursor("Ref", e.Location); ResetCurrentCursor(RefCursor, e.X, e.Y); } else { InitalCursor("Mea", e.Location); ResetCurrentCursor(MeaCursor, e.X, e.Y); } MouseIsDoubleClick = false; } Invalidate(); ///重置光标选定信息和状态信息 MouseLeftIsDown = false; if (RefCursor != null) { RefCursor.Selected = false; } if (MeaCursor != null) { MeaCursor.Selected = false; } MouseState = "+"; }
private void AscanToolLayout_MouseUp(object sender, MouseEventArgs e) { ///重置缩放区域 if (zoomRegion != null && zoomRegion.width != 0 && zoomRegion.height != 0 && !MouseIsDoubleClick) { FigCursors ft = new FigCursors(); InitialCursors(ref ft); ft.XPixel = zoomRegion.minX; ft.YPixel = zoomRegion.minY; float sx = ft.X; float ey = ft.Y; int xa = ft.XPixel; int ya = ft.YPixel; ft.XPixel = zoomRegion.minX + zoomRegion.width - 1; ft.YPixel = zoomRegion.minY + zoomRegion.height - 1; float ex = ft.X; float sy = ft.Y; int xb = ft.XPixel; int yb = ft.YPixel; /*Console.WriteLine(new Rectangle(xa, ya, xb - xa, yb - ya)); * Console.WriteLine("sx=" + sx.ToString()); * Console.WriteLine("ex=" + ex.ToString()); * Console.WriteLine("sy=" + sy.ToString()); * Console.WriteLine("ey=" + ey.ToString());*/ if (xb > xa & yb > ya) { StartX = sx; EndX = ex; StartY = sy; EndY = ey; RangeChanged?.Invoke(new float[] { StartX, EndX, StartY, EndY, zoomRegion.minX, zoomRegion.minY, zoomRegion.width, zoomRegion.height }); } } zoomRegion = null; ///1 鼠标双击时,设置光标,并获取当前光标相对位置 ///2 重置双击状态 if (MouseIsDoubleClick) { if (e.Button == MouseButtons.Left) { EnableCursors(ref ReferenceC, e.X, e.Y); } else { EnableCursors(ref MeasureC, e.X, e.Y); } MouseIsDoubleClick = false; } Invalidate(); ///重置光标选定信息和状态信息 MouseLeftIsDown = false; SetAllDisable(); MouseState = "+"; }