• arcEngine经典代码添加气泡提示框(标注,文本,)


        private void axMapControl1_OnMouseDown(object sender, IMapControlEvents2_OnMouseDownEvent e)
            {
           
                if (i >= 3)//测试目的
                    return;
                i++;

                ITextElement te = createTextElement(e.mapX,e.mapY,"魁x");
                axMapControl1.ActiveView.GraphicsContainer.AddElement(te as IElement, 1);
                axMapControl1.Refresh(esriViewDrawPhase.esriViewGraphics, null, null);

        
            }
            int i;

            public IBalloonCallout createBalloonCallout(double x, double y)
            {
                IRgbColor rgb = new RgbColorClass();
                {
                    rgb.Red = 255;
                    rgb.Green = 255;
                    rgb.Blue = 200;

                }
                ISimpleFillSymbol sfs = new SimpleFillSymbolClass();
                {
                    sfs.Color = rgb;
                    sfs.Style = esriSimpleFillStyle.esriSFSSolid;
                }

                IPoint p = new PointClass();
                {
                    p.PutCoords(x, y);
                }

                IBalloonCallout bc = new BalloonCalloutClass();
                {
                    bc.Style = esriBalloonCalloutStyle.esriBCSRoundedRectangle;
                    //
                    bc.Symbol = sfs;
                    //
                    bc.LeaderTolerance = 10;
                    //1

                    bc.AnchorPoint = p;
                }

                return bc;
            }

            public ITextElement createTextElement(double x, double y, string text)
            {
                IBalloonCallout bc = createBalloonCallout(x, y);
               
                IRgbColor rgb = new RgbColorClass();
                {
                    //rgb.Red = 255;
                    rgb.Green = 255;
                }
                ITextSymbol ts = new TextSymbolClass();
                {
                    ts.Color = rgb;
                }

                IFormattedTextSymbol fts = ts as IFormattedTextSymbol;
                {
                    fts.Background = bc as ITextBackground;
                }
                //fts.Size = 8;
                ts.Size = 8;

                IPoint point = new PointClass();
                {
                    double width = axMapControl1.Extent.Width / 13;
                    double height = axMapControl1.Extent.Height / 20;
                    point.PutCoords(x + width, y + height);
                }

                ITextElement te = new TextElementClass();
                //IMarkerElement me = new MarkerElementClass();
                {
                    te.Symbol = ts;
                    //ts.Text = text;
                    te.Text = text;
                }

                IElement e = te as IElement;
                {
                    e.Geometry = point;
                }
                return te;

            }
        }

  • 相关阅读:
    freertos 启动任务调度器后卡在svc 0,汇编停在了0x0800014A E7FE B 0x0800014A
    cadence报错:Class must be one of IC, IO, DISCRETE, MECHANICAL, PLATING_BAR or DRIVER_CELL.
    DDR内存256M16、512M8含义
    常用摄像头像素
    cadence报错because the library part is newer than the part in the design cache.Select the part in the cache and choose Design-Update Cache,and then place the part again.
    ESP-Example ble-ancs解析
    ping 请求找不到主机 www.baidu.com
    linux驱动ioctl报[-Werror=incompatible-pointer-types]错
    常用排序算法对比
    修改gitlab服务器网段后修改git配置的方法
  • 原文地址:https://www.cnblogs.com/xiexiaokui/p/1265450.html
Copyright © 2020-2023  润新知