Engine中如何实现先居中显示要素再闪烁

时间:2022-09-26 15:00:28

【解决办法】:
需要在要素居中显示之后、闪烁之前执行IScreenDisplay.UpdateWindow强制全刷,如:

//居中显示要素
IActiveView actView = axMapControl1.ActiveView;
IEnvelope envelpe = actView.Extent;
envelpe.CenterAt(pt);
actView.Extent = envelpe;
actView.Refresh();

//加入强制刷新,保证刷完后再执行其他语句
actView.ScreenDisplay.UpdateWindow();

//调用闪烁代码
IRgbColor rgbColor = new RgbColorClass();
rgbColor.RGB = 255;
FlashGeometry(pt, rgbColor, actView.ScreenDisplay, 500);