次のスタイルのどれが好きですか?
- タスクを実行するアプリケーションが新しいフォームを開きます
- さまざまな「フォーム」をさまざまなタブに保持するアプリケーション
- PageControlに基づいており、実行したい内容に応じて適切なタブを表示するアプリケーション。
- 他の何か
また、GUIデザインのための良いリンクはありますか?
次のスタイルのどれが好きですか?
また、GUIデザインのための良いリンクはありますか?
プログラマーの観点からすると、PageControlソリューションはすぐに手に負えなくなります。おそらくコードが多すぎて、1つのフォームの多くのコンポーネントにとって確かに多すぎます。(元々、この質問はDelphiとタグ付けされていたので、そこから進みます。)
ユーザーの観点からは、「新しいウィンドウを開く」パラダイムはしばしば混乱を招きます。私たちの人々は、マルチタスクを実行して多くの開いているウィンドウやタスクを処理できると考える傾向がありますが、そうではありません(コンピューターのように時間のロスでタスクを切り替え、精度を低下させます)。
明らかに、これは実際にはアプリケーションのタイプによって異なります。しかし、ChromeとFirefoxが最新の化身で示しているように、私はパラダイムになりがちです。
アプリケーションのメイン画面としてもSDIのようなものを実装しています。「Outlookスタイル」のようなものを見てください。ナビゲーション、オブジェクトのリスト、さまざまなペインのオブジェクトの詳細、コックピットなどの追加のペイン。次に、特定のタスク(一部はモーダル、一部は非モーダル)の新しいウィンドウ/フォームを開きますが、短命です。メールが書き込まれると、メールが送信されてウィンドウが閉じます。しかし、私がそうすることができれば、一度に複数の電子メールで作業する可能性があります。
問題を見てください。ダッシュボードの文字がある場合は、「Outlookスタイル」などを使用してください。ユーザーが広範囲に渡り、異質で、コンピューターに精通していない群衆である場合は、タブでSDIまたはフォームを使用します。あなたがプログラマーのために書くなら、私たちがそれを扱うことができると私たちが考える傾向があるという理由だけで、あなたは複数の形式に行くかもしれません。そして、それは複数の画面で機能します(うまくいけば)。
私の意見では、MDIは可能な限り最悪の選択です。たくさんのウィンドウのサイズを変更したり、タイル状にしたりすることほど嫌いなことはありません。
タブも悪いです。特に、複数の行がある場合(または、1つの行があるが、収まるよりも多くのタブがあり、ファンキーなスクロールバーまたは「詳細」ボタンを使用する必要がある場合)。
むしろ、プログラマーが問題について考え、ユーザーとして何をしているかに基づいて、私が見る必要があるものを見せてくれることを望んでいます。プログラムにさまざまなユーザーインターフェイスを(個別のフォームではなく)ユーザーコントロールとして実装し、現在のコンテキストに基づいてそれらを表示または非表示にするのが方法です。
タブコンテンツごとにフレームを使用する場合は、タブ付きフォームを使用することをお勧めします。これにより、1つのフォームユニットで大量のコードを取得する問題を回避できます。GoogleChromeと同じようにしてみてください。私は個人的に、ユーザーが要求したときにのみ読み込まれるフレームであるオプションを使用してメニューを作成します。そのため、ユーザーがすべてのタブを開く必要がない限り、多くのタブが表示されることはありません。