您的位置:首页 > 其它

ArcEngine中使用上下左右键移动地图

2009-02-10 09:20 417 查看
axMapControl1.KeyIntercept = 1;
private void axMapControl1_OnKeyDown(object sender, ESRI.ArcGIS.MapControl.IMapControlEvents2_OnKeyDownEvent e)

{

switch (e.keyCode)

{

case (int)System.Windows.Forms.Keys.Up:

PanMap(0d, 0.5d);

break;

case (int)System.Windows.Forms.Keys.Down:

PanMap(0d, -0.5d);

break;

case (int)System.Windows.Forms.Keys.Left:

PanMap(-0.5d, 0d);

break;

case (int)System.Windows.Forms.Keys.Right:

PanMap(0.5d, 0d);

break;

}

}

private void PanMap(double ratioX, double ratioY)

{

//Pans map by amount specified given in a fraction of the extent e.g. rationX=0.5, pan right by half a screen

IEnvelope envelope = axMapControl1.Extent;

double h = envelope.Width;

double w = envelope.Height;

envelope.Offset(h * ratioX, w * ratioY);

axMapControl1.Extent = envelope;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: