2009-07-10 9 views
4

私は(デルファイ)アプリケーションの整理をしています。浮動小数点型のサイズと場所の永続性を訪れていました。これは、大画面の不動産とマルチモニターにとってますます重要になってきています。明らかに、ユーザのフォームを閉じたときと同じ場所で再び開くことが望ましいことは多いが、モーダルダイアログでは、ユーザビジョンの前、つまりプライマリのモニタセンター画面上のオープニング・バンを正当化する場合がある。このことについてネット上にはほとんど存在しないようで、商用アプリケーションは、特に複数のモニタに関して矛盾しているようです。したがって、私たちを始めようとするいくつかの(おそらく反則的な)規則...シングルおよびマルチモニタシステムでのフォームとダイアログの配置に関するベストプラクティスは何ですか?

  • 非モーダル形式は、常にクロージャのサイズと位置で再オープンする必要があります。
  • 以前のサイズ(大きければ)ではなく、アプリケーションが常駐するモニタの中央に、モーダルフォーム(つまりOK /キャンセル、はい/いいえボタン)を再度開く必要があります。
  • アプリケーションが常駐するモニタの中央に情報メッセージボックスが開きます。
  • プライマリモニタの中央に警告またはエラーダイアログが開きます。

ブライアン

答えて

2

事前のおかげで、「非モーダルフォームが常に閉鎖のサイズと位置で再度開く必要があります。」

最初に開いたときの位置とサイズは、デフォルトの位置とサイズでなければなりません。これに関する規則は ありますか?

修飾子を追加します:画面解像度/モニタ数がこのフォームを最後に開いた時と異なる である場合、デフォルトの の位置に戻ります。したがって、アクセス不可能なフォームは、右に400ピクセル、画面領域に を復元しませんでした。

"警告またはエラーダイアログがプライマリモニタの中央に表示されます。"

メッセージボックスを「 のアプリケーションが常駐するモニタ」(以後MWTAR)からプライマリモニタに移動する理由を理解できません。あなたはMWTARを見て であることを知っています。結局のところ、彼はちょうど何か「悪い」をやっている。なぜあなたは モニターを変えているのですか?あなたは何か重要なことを言っていますか?

(それは便利な診断を含むエラーダイアログがある場合は結局のところ、彼はとにかくそれを読んでいない だろう。私は彼からそれを隠すために必要が表示されません。)

さらに考え。エラーモーダルダイアログの1つの問題は、どこにポップアップしたとしても、何か他のタイプを入力して却下したときに誤って「Enter」を押す可能性があることです。私はこれをかなり頻繁に行うことを知っています。

私がこれを克服するのを見た1つのトリックは、ダイアログが最初に表示されたときに[OK]ボタンを無効にすることです。ダイアログに3秒のタイマーがあり、カウントダウンし、ボタンに付いている小さなラベルに残っている時間を表示します。それで彼は、すぐに物事を解雇できるようになることを知っています。

これは非常に、非常に控えめに、そして最も希少で重要なダイアログボックスでのみ使用する必要があります。しかし、それは私をかなり賢いように打ちました。おそらく、3秒後にOkをデフォルトのボタンにする必要があるでしょう。

1

プラットフォームによっては、警告を発するときにアプリケーションにフォーカスがないときは、フォーカスを避ける必要があります。ユーザーが入力すると、警告を無視して警告を消すことができます。

など。 Windowsでは、タスクバーのボタンを点滅させる機能を利用します。

2

モニタの中央にが表示されないようにするには、は表示されません。 2560 x 1600ピクセルの解像度を持つ30インチモニターの1つを考えてみましょう。これらのモニターの1つで最大化されたアプリケーションを使用するのは非常に特殊な場合にのみ意味があります。アプリケーションフォームがその巨大画面領域の角の1つにある場合、マウスカーソルを現在の位置から画面の中央に移動し、ダイアログを閉じた後に戻る必要があります。また、通常の表示距離では、その画面をすべて同時に表示することは不可能なので、アクティブなウィンドウは画面中​​心よりも「ユーザーの視界の前に」表示されますが、その位置を記憶していないダイアログは親ウィンドウの中央に表示されますが、親ウィンドウよりも大きなダイアログは例外です親のビットを表示したままにしておくと意味があります)、適用対象のオブジェクトの近くに表示されるプロパティページが表示されます。

画面の位置をピクセル単位ではなく、画面領域のパーセントで保存することも考えています。大型の外部スクリーンの有無にかかわらず、ラップトップを使用すると、常に画面領域を最適に使用できます。絶対座標を使用すると、画面の一部が使用されないか、ウィンドウが可視領域外に移動します。

関連する問題