首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

winfrom 用panel 实现map功能.

2013-04-12 
winfrom 用panel 实现地图功能....winfrom 用panel 加载一张地图,通过移动状态条来制作一个地图的功能,要

winfrom 用panel 实现地图功能....
winfrom 用panel 加载一张地图,通过移动状态条来制作一个地图的功能,要求图片可以基于鼠标当前点放大缩小,可以进行鼠标拖拽....并且在放大缩小的要效果体验良好,我现在弄的会闪动,无拖拽,基于鼠标点放大缩小也没弄出来,摆脱各位指点一二....
[解决办法]
闪动 采用双缓冲技术
缩放 监听鼠标滑轮滚动事件 设置panel的大小
拖放代码:
       Point downP;
        private void mapPanel1_MouseDown(object sender, MouseEventArgs e)
        {
            downP = e.Location;
        }

        private void mapPanel1_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                Cursor = Cursors.SizeAll;
                Point px = new Point(Location.X + e.X - downP.X,
                     Location.Y + e.Y - downP.Y);
                mapPanel1.Left += px.X;
                mapPanel1.Top += px.Y;
                //外框如果有滚动条  对应改变滚动条的值
             }
             else
            {
               Cursor = Curosrs.Default;
            }
        }

热点排行