e.Delta表示鼠标当前滚轮滚动的“角度”,以下代码演示了根据滚动角度计算放大缩小倍数的方法,你可以试一下:
private float _倍数 = 1;
private void panel1_MouseWheel(object sender, System.Windows.Forms.MouseEventArgs e)
{
//MessageBox.Show("鼠标滚动事件已被捕捉");
Graphics g = this.CreateGraphics();
g.Clear(SystemColors.Control);
Matrix X = new Matrix();
_倍数 += (float)e.Delta / 360;
X.Scale(_倍数, _倍数, MatrixOrder.Append);
g.Transform = X;
g.DrawEllipse(Pens.Black, 20, 20, 80, 80);
g.Dispose();
}