読者です 読者をやめる 読者になる 読者になる

やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

HScrollBarをTrackBarに変えてみた

プログラミング

色編集アプリのUIとしてTrackBarを使いました。 前回のHScrollBarにおける罠と欠点が解消されていました。しかし、別の残念な点がありました。

残念な点

  • ビジュアル
    • 表示幅が大きすぎる
    • 目盛り表示はいらない
      • 目盛り表示が潰れて黒い直線になってしまう
  • 操作性
    • ツマミから離れた点を長押しつづけるとツマミが移動するが、その周期が0.5秒と遅すぎる
    • ツマミから離れた点を長押ししながらマウスポインタを動かすと移動速度が不規則に変動する

Maximum=10 f:id:ytyaru:20160615072224p:plain

Maximum=255 f:id:ytyaru:20160615072230p:plain

なお、根本的に見た目がダサいことには目をつぶります。

こうなればいい

  • ビジュアル
    • バーやツマミの大きさを任意に変えたい
    • 目盛りの表示を消したい
  • 操作性
    • ツマミから離れた点を押下した瞬間、その地点に瞬間移動させたい
      • マウスオーバー時にフォーカスが当たっていることを表示したい (瞬間移動による誤操作を防止するため)

どうすればいい?

  • TrackBarクラスを継承したクラスを作る
  • UserControlでゼロから実装する

まずは簡単そうなTrackBarクラスの継承からやってみよう。