web-dev-qa-db-ja.com

変更が加えられていない場合、[保存]ボタンを無効にする必要がありますか?

デスクトップアプリケーションがあり、このアプリケーションには、ユーザーが何かを変更できる非モーダルダイアログがあります。ダイアログには、閉じるボタンと保存ボタンがあります。保存ボタンはnotを実行してダイアログを閉じます。ユーザーがこれらの変更を行い、結果を確認し、さらに多くの変更を加える可能性があるためです。

ダイアログの状態は常に有効であり、必須フィールドなどはありません。

保存ボタンには2つのオプションがあります。

  1. 保存ボタンは常に有効にしておいてください。ユーザーがクリックすると、チェックマークが表示されるか、おそらく数秒間短い成功メッセージが表示されます。
  2. 変更が行われるまで[保存]ボタンを無効にしてから、有効にします。クリックすると無効に戻ります。

それぞれのアプローチの長所と短所を見ることができます。受け入れられた基準や、1つのアプローチの方が優れている理由はありますか?

2
Robin

私見、選択肢1は悪いです。私はIDEで作業します。これは、リモートサーバーに実行可能ファイルが既に存在することがわかっている場合は、それを再インストールしません。そのファイルが削除されている場合、明示的な「インストール「これを行わないでください。

編集:保存したデータがプログラムの外で何らかの理由で削除または変更された場合。それが起こっていることを知らなければ、それは失われます。

選択肢2はおそらく問題なく、変更が行われたかどうかを確認することもできます。

最後の変更後しばらくしてから保存する自動保存機能を実装することをお勧めします。小さなアイコンまたはビジースピナー、またはコーナーのどこかに成功の単純なインジケーターで表されるこの進捗状況を確認したいと思います。 StackExchangeの例は次のとおりです。

"draft saved" - stack exchange

必要に応じて、明示的な保存アクションのために上記のアイコンをクリック可能にすることができますが、その場合は無期限に保存されるはずです。

編集:自動保存が望ましくない場合は、おそらく選択肢2が適しています。変更が加えられていない場合は、ボタンをクリックしたままにできますが、ステータスが表示され、実際にデータが保存されます。既に保存されているものを保存したくない場合(またはそう思われる場合)、ボタンを完全に無効にします。ボタンに「保存」と表示されていても表示されない場合、どのようなボタンですか。

1
trollingchar

オプション2が、完全には制御できない多くの種類のハードウェアで実行されている場合は、私は嫌いです。過負荷のハードウェア/ OS /トロイの木馬で処理が遅くなると、アプリケーションの動作が遅くなることがあります。その場合、保存がアクティブになっている短い時間を逃すと、保存したかどうかがわかりません。最後に保存された(タイムスタンプ)/保存されていない、という別の小さなメッセージが必要です。

特に元に戻す機能や最後の保存機能に戻る機能がない場合は、何かが保存されるまでCloseをアクティブにしないでください。そして、私は閉じることは保存しないと思います。

0
user3082

はい、変更が加えられていない場合は、保存ボタンを無効にする必要があります。

ボタンの名前は、変更を保存するという事実を強調する場合に最適です。次に例を示します。 Save Chages そしてそれは Cancel (または閉じる)ボタン。ユーザーが選択できることは明らかです。

変更が常に正常に適用され(たとえば、失敗する可能性のある個別のHTTP呼び出しとしてではなく)、アプリケーションで一般的なパターンである場合を除き、変更が正常に適用されたことを数秒間通知するのが妥当です。

0
Pavel

これは、ユーザーが変更を加える頻度に依存します。ただし、ボタンはいつでも有効にできます。ユーザーがボタンに変更を適用したら、必ずボタンが正常に保存されたことをユーザーに通知してください。

例えば

変更を保存-ボタンのプライマリ名

保存済み-変更の保存ボタンをトリガーした後、数秒後にボタン名が変更されます。名前は主要なものに戻ります。

これが役に立てば幸い

0
Jaime Caro

最も重要なことは、ユーザーがシステムの状態を知っていることです。

保存状態が無効になっていると、実際には保存状態が最新であり、すべてが保存されていることをユーザーに伝えています。これは良いことです。ユーザーがそれを知っている限り。

2番目のオプションを使用すると、システムが節約しているという事実をフィードバックする限り、問題は発生しません。欠点は、「節約」を示す状態がないことです。

最初のオプションはより多くの情報を運びます。

0
colmcq