今回は、ユーザサイドから見たソフトウェアの振る舞いの作法についてです。
ダイアログのサイズ
WindowsCE/PocletPCは歴史が長いため、さまざまな解像度のデバイスが存在します。このため、全てのデバイスでダイアログボックスを正常に表示するためには、
のどちらかの対応が必要になります。
終了メニューをつける
PocketPCの正式な作法では、ユーザはアプリケーションを終了させなくてもよいことになっています。実際Microsoftの提供するアプリケーションは終了メニューがありません。右上のクローズボックスをタップしてもアプリケーションは非表示になるだけで、メモリに常駐したままです。
アプリケーションをたくさん立ち上げてメモリが少なくなると、PocketPCは自動的にアプリケーションを終了させます。このため、PocketPCのプログラムはWM_CLOSEイベントを受け取ると終了するようにしなければなりません。
ところがこれは実際は絵に書いた餅であり、使うにしたがってメモリが圧迫されて動作が遅くなり、最後はハングすることもあります。このため、GSPocketMagicのような「終了化ユーティリティ」を使って終了させるのがPocketPCユーザの常識になっています。
そこで、「アプリケーションには終了メニューをつけて、ユーザが終了できるようにする」のが、ユーザの視点に立った作法だと思います。
なお、オンラインソフトの中には、右上のクローズボックスを終了に割り当てているものがあります。この辺は作者さんの考え方次第なのですが、私はあまり好みません。(1)GSPocketMagic等でクローズボックスの動作を変更できる、(2)アプリケーションを常駐させたまま他のアプリケーションに切り替えたいときに困る、からです。