Пример #1
0
        /// <summary>
        /// 鼠标双击
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void mapControl_OnDoubleClick(object sender, IMapControlEvents2_OnDoubleClickEvent e)
        {
            if (e.button != 1)
            {
                return;
            }
            isMove = false;
            IPoint point = new PointClass();

            point.PutCoords(e.mapX, e.mapY);
            var elementenum = graphicsContainer.LocateElements(point, 0);

            if (elementenum != null)
            {
                isLeftBtnDown           = true;
                mapControl.CurrentTool  = null;
                mapControl.MousePointer = esriControlsMousePointer.esriPointerCrosshair;
                textCtr = new MapFrame.ArcMap.Windows.TextInput();
                textCtr.SetText(editElement.Text);
                textCtr.SetFont(new System.Drawing.Font(editElement.FontName, (float)editElement.Size));

                //将arc的颜色转换为.net颜色
                System.Drawing.Color color = System.Drawing.ColorTranslator.FromOle(editElement.Color.RGB);
                textCtr.SetColor(color);
                textCtr.Location = new System.Drawing.Point(e.x, e.y);
                mapControl.CreateControl();
                mapControl.Controls.Add(textCtr);
                textCtr.InputFinished += InEditFinshen;
            }
        }
Пример #2
0
 /// <summary>
 /// 执行命令
 /// </summary>
 public void RunCommond()
 {
     mapControl.CurrentTool  = null;
     mapControl.MousePointer = esriControlsMousePointer.esriPointerCrosshair;
     measureTool             = new MeasureTool(this);
     mapControl.CreateControl();//强制创建控件
     measureTool.Location = new System.Drawing.Point(0, 0);
     mapControl.Controls.Add(measureTool);
     layer = mapLogic.AddLayer("measure_layer");
     RegistEvent();
 }
Пример #3
0
 /// <summary>
 /// 鼠标按下事件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void mapControl_OnMouseDown(object sender, IMapControlEvents2_OnMouseDownEvent e)
 {
     if (e.button == 1 && !isControl && !isMouseDown)
     {
         textCtrl          = new TextInput();
         textCtrl.Location = new Point(e.x, e.y);
         mapControl.CreateControl();//强制创建控件
         mapControl.Controls.Add(textCtrl);
         textCtrl.InputFinished += InputFinish;
         downPoint = new MapLngLat()
         {
             Lng = e.mapX, Lat = e.mapY
         };
         isMouseDown = true;
     }
 }