あんにんにっき。

日々思ったことや、おこったことを記録するブログ。要するに日記。

e.Handled = True

 VB.NETでのWindowsMobileソフトの開発の話。
 今日、他の機能をについて調べていて知ったのだが、e.Handled = True とやると、キーイベントをキャンセルできるらしい。
 たとえば.net CompactFrameworkで作ると、右方向のキーを押したりすると、フォーカスが移動するのだけど、
 e.Handled = True
 と入れておけば、それがキャンセルできるらしい。知らんかった…。
 moneymemoというツールを作っていて、項目の選択箇所で、「いくつかの選択肢の中から一つを選択する」という箇所(たとえば費目の選択)に、テキストボックス+左右キーで選択という一般的ではないインターフェースを用いているのは、実はこの e.Handled = True を当時知らなかったためだったり。
 普通に、ComboBoxコントロールを使うつもりだったのだけど、一度リストを出した後は、どっちの方向キーを押してもフォーカスが次に移らない→画面をタップする必要がある(TABキーでもいいけど)、ためわざわざ一般的ではない方法で逃げたという…。
 うん。次はもっとうまくやろう。