色編集アプリのUIとしてHScrollBarを使いました。 しかし、罠と欠点がありました。
欠点
- HScrollBarのツマミをドラッグして一定範囲外までいくと前回位置に戻る
以下の罠を乗り越えても、この欠点は解決できませんでした。 これは使いづらい…
罠
- MaxValueプロパティを255に指定する
- HScrollBarのツマミをドラッグする
- 246までしかスクロールできない
原因はLargeChangeプロパティが10だったためです。これを1にすることで解決しました。
できない
できた
仕様
Valueプロパティで取れる最大値は「1 + ScrollBar.Maximum - ScrollBar.LargeChange」だそうです。
こちらが素敵にまとめてあります。 http://d.hatena.ne.jp/you-scheme/20100823/1282563376
これはHScrollBarの仕様とのこと。 https://social.msdn.microsoft.com/Forums/vstudio/ja-JP/126bde86-2dd6-4f0c-a8b5-a5c5db404659/largechangemaximum?forum=csharpgeneralja
代用
きっとHScrollBarは今回のような使い方を想定していないのでしょう。 TrackBarで代用することにします。