C#实现鼠标滚筒缩放界面的效果

elementCanvas继承UserControl

声明属性:

#region 缩放属性添加
float ratio = 1.0f;
public float Ratio
{
set
{
ratio = value;

Width = width;
Height = height;
}
get => ratio;
}

int width;

public int Width
{
set
{
width = value;
Console.WriteLine("W::" + width + "width+Value::" + width * Ratio);
base.Width = (int)(width * Ratio);

}
get
{
return width;
}
}

int height;

public int Height
{
set
{
height = value;
base.Height = (int)(height * Ratio);
}
get
{
return height;
}
}

#endregion

添加鼠标事件:

 this.MouseWheel += new MouseEventHandler(this_MouseWheel);

private void this_MouseWheel(object sender, MouseEventArgs e)
{
if (Control.ModifierKeys == Keys.Control)
{
if (e.Delta > 0)
Ratio += 0.1f;
else if (e.Delta < 0)
Ratio -= 0.1f;
Ratio = Ratio > 0.3f ? Ratio : 0.3f;
Ratio = Ratio < 2.0f ? Ratio : 2.0f;
}
}

转载于:https://www.cnblogs.com/LCLBook/p/11362931.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值