图片拖拽

来源:互联网 发布:淘宝付款时间限制 编辑:程序博客网 时间:2024/04/30 21:00

       和上一贴相同,本帖是其功能的一个拓展,实现图片放大之后的拖拽,如google地图,在地图放大后,拖拽到局部部分查看细节,代码如下:

        private void chartControlRunTime_MouseDown(object sender, MouseEventArgs e)        {            if (e.Button == MouseButtons.Left)            {                initialPoint = e.Location;            }        }        private void chartControlRunTime_MouseUp(object sender, MouseEventArgs e)        {            lastPoint = e.Location;            int xOffset, yOffset;            xOffset = lastPoint.X - initialPoint.X;            yOffset = lastPoint.Y - initialPoint.Y;            chartControlRunTime.Location = new Point(chartControlRunTime.Location.X + xOffset, chartControlRunTime.Location.Y + yOffset);        }
      initialPoint和lastPoint已经定义,分别记录鼠标按下和松开时,其指向位置。定义如下:private Point initialPoint;private Point lastPoint。
      本功能的实现原理是:分别记录鼠标按下和释放时的位置,计算出其位差xOffset、yOffset,然后修改图片的location即可。