[DllImport("user32.dll")]
public static extern int WindowFromPoint(int xPoint, int yPoint);
void Form1_MouseWheel(object sender, MouseEventArgs e)
{
System.Drawing.Point p = PointToScreen(e.Location);
if (WindowFromPoint(p.X, p.Y) == pictureBox1.Handle.ToInt32())
{
//向前
if (e.Delta > 0)
{
float w = this.pictureBox1.Width * 0.9f; //每次縮小 20%
float h = this.pictureBox1.Height * 0.9f;
this.pictureBox1.Size = Size.Ceiling(new SizeF(w, h));
}
//向后
else if (e.Delta < 0)
{
float w = this.pictureBox1.Width * 1.1f; //每次放大 20%
float h = this.pictureBox1.Height * 1.1f;
this.pictureBox1.Size = Size.Ceiling(new SizeF(w, h));
pictureBox1.Invalidate();
}
}
}
本文介绍了一种使用C#实现PictureBox中图片的鼠标滚轮缩放功能的方法。通过检测鼠标滚轮滚动方向来调整PictureBox的大小,实现图片的放大和缩小效果。此功能适用于需要用户交互缩放图片的应用场景。

4697

被折叠的 条评论
为什么被折叠?



