0
GetScrollInfoネイティブメソッドを使用してコントロールのスクロール値を取得し、その値を自分のカスタムスクロールバーに設定しています。 SCROLLINFOを使って、システムスクロールバーの最小値、最大値、および大きな変化を見つけることができます。しかし私は得ることができなかったSmallChange値。システムスクロールバーを計算する方法SmallChange値
コードスニペット:
GetScrollInfo(control.Handle, SB_HORZ, ref hScrollInfo)
private void UpdateScrollBarValues(ScrollBarBase bar, ref SCROLLINFO scrollInfo)
{
bar.Minimum = scrollInfo.nMin;
bar.Maximum = scrollInfo.nMax;
bar.Value = scrollInfo.nPos;
bar.LargeChange = scrollInfo.nPage;
//How can we calculate or set the
//bar.SmallChange = ??
}
は、システムのスクロールバーの小さな変更を見つけるために、他の代替方法が提供されてあります?
こんにちは@Anil、 お寄せいただきありがとうございます。 SmallChangeを計算するための共通の要因は何ですか? 20はデフォルトですか?または一般的な要素があるかどうかを確認します。 – Adhi
デフォルト値は1 – Anil
私は以下のようなコードを使用しています。bar.SmallChange = Math.Max(1、(scrollInfo.nMax -scrollInfo.nPage)/ 20); 'それは** nPage/20 **ですか?この場合正しい? – Adhi