需求:
需要局部放大的功能,即像Google地图一样,滚动鼠标滚轮,地图会伸缩,且可以用鼠标拽动看版面上不同局部的放大图。
实现:
1)对于缩放,每个控件都有一个属性size,修改size属性,就可以使控件伸缩。具体方法,大部分控件都有MouseWheel事件,将伸缩的动作(如size属性的改变等动作)注册到这个事件中即可。
2)拖拽功能,将控件的父容器的AutoScroll属性设为true,即表示如果占的页面大于当前页面,那么就会出现想浏览器一样的scroll属性。
3)其他:如如何区别滚轮的滑动方向(向上还是向下),MouseWheel事件的吧,相应的事件参数类型是MouseEventArgs,MouseEventArgs有个delta属性,在这个事件中表示滚轮滚动的度数,若为正则滚轮的方向为向前推(远离你,即你说的“向上”),否则为向后拨(靠近你,即你说的“向下”),见以下代码。
代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
usi