マウスホイールを上下にスクロールすると、サイズを大きくしたり、小さくしたりしたい画像があります。画像が設定された最大サイズに達した場合、画像が大きくなることはありません。画像を小さくすると、その逆も同様です。私が抱えている問題は、画像の最大サイズに達して上にスクロールし続けてから下にスクロールすると、画像が上にスクロールしたのと同じ回数下にスクロールするまで、画像がすぐに小さくならないことです。画像を小さくするために最大サイズともう一度逆にします。ScrollWheelValue は読み取り専用プロパティであるため、リセットできません。ホイールが上にスクロールされ、画像が最大サイズの場合、120 はマウスがスクロールごとに増加するため、120 を減算するロジックを追加しようとしていました。誰でもこの問題で私を助けることができますか? どうもありがとう
元のコード:
float scale = ms.ScrollWheelValue / 120;
scaleFactor = scale * scaleChange;
if (scaleFactor > MAX_SCALE)
{
scaleFactor = MAX_SCALE;
}
else if (scaleFactor < MIN_SCALE)
{
scaleFactor = MIN_SCALE;
}
新しいコード:
if (scaleFactor > MAX_SCALE)
{
scaleFactor = MAX_SCALE;
float newScale = ms.ScrollWheelValue / 120;
if (newScale > scale)
{
scaleCount = scaleCount - 120;
}
if (newScale < scale)
{
scaleCount = scaleCount + 120;
}
}
else if (scaleFactor < MIN_SCALE)
{
scaleFactor = MIN_SCALE;
float newScale = ms.ScrollWheelValue / 120;
if (newScale > scale)
{
scaleCount = scaleCount - 120;
}
if (newScale < scale)
{
scaleCount = scaleCount + 120;
}
}
else
{
scale = ms.ScrollWheelValue / 120 + scaleCount;
scaleFactor = scale * scaleChange;
}