web-dev-qa-db-fra.com

Un bouton Enregistrer doit-il être désactivé s'il n'y a eu aucune modification?

J'ai une application de bureau, et dans cette application, il y a une boîte de dialogue non modale où un utilisateur peut apporter des modifications à quelque chose. La boîte de dialogue comporte un bouton Fermer et un bouton Enregistrer. Le bouton Enregistrer ne pas ferme la boîte de dialogue, car nous nous attendons à ce que les utilisateurs apportent ces modifications, vérifient le résultat, puis effectuent éventuellement d'autres modifications.

L'état de la boîte de dialogue sera toujours valide, il n'y a pas de champs obligatoires ou quelque chose comme ça.

Nous avons proposé deux options pour le bouton Enregistrer:

  1. Laissez le bouton Enregistrer activé à tout moment. Lorsqu'un utilisateur clique dessus, il affiche brièvement une coche ou peut-être un court message de réussite pendant quelques secondes.
  2. Désactivez le bouton Enregistrer jusqu'à ce qu'une modification soit effectuée, puis activez-le. Lorsque vous cliquez dessus, il redevient désactivé.

Je peux voir les avantages et les inconvénients de chaque approche. Existe-t-il une norme acceptée ou une raison pour laquelle une approche est meilleure?

2
Robin

À mon humble avis, le choix 1 est mauvais. Je travaille dans IDE qui ne réinstalle pas l'exécutable sur le serveur distant s'il sait qu'il est déjà là. Si ce fichier est supprimé, toute tentative d'exécution/de débogage de l'exécutable échoue même juste après une "installation" explicite ". S'il vous plaît ne faites pas ça.

Modifier: Je veux dire que si vos données enregistrées sont en quelque sorte supprimées ou modifiées en dehors de votre programme. Si je ne sais pas ce qui se passe, c'est perdu.

Le choix 2 est probablement correct et permet également de vérifier si des modifications ont été apportées.

Je suggère de mettre en œuvre une fonction d'enregistrement automatique qui enregistre après un certain temps après le dernier changement. J'aimerais voir la progression de cela représentée par une petite icône ou une toupie occupée ou un simple indicateur de succès quelque part dans le coin. Un exemple est ici sur StackExchange:

"draft saved" - stack exchange

Si vous le souhaitez, vous pouvez rendre cette icône cliquable pour une action de sauvegarde explicite, mais elle doit ensuite être sauvegardée indéfiniment.

Edit: Si la sauvegarde automatique n'est pas souhaitable, le choix 2 est probablement pour vous. Vous pouvez laisser le bouton cliquable lorsqu'aucune modification n'a été apportée, mais il doit afficher l'état et il doit réellement enregistrer les données. Si vous ne voulez pas que j'enregistre ce qui est déjà enregistré (ou c'est ce que vous pensez), désactivez complètement le bouton. Si le bouton dit "Enregistrer" mais ne le fait pas, de quel type de bouton s'agit-il?

1
trollingchar

Je n'aime pas l'option deux si elle fonctionne sur de nombreux types de matériel que vous ne contrôlez pas complètement; Parfois, les applications s'exécutent lentement sur du matériel surchargé/enlèvent le système d'exploitation/les chevaux de Troie - si c'est le cas, et si vous manquez le bref temps pendant lequel la sauvegarde est active, vous ne savez pas si vous avez enregistré ou non. Vous avez besoin d'un autre petit message qui dit: dernier enregistré (horodatage)/non enregistré.

La fermeture ne doit pas être active tant que quelque chose n'a pas été enregistré, surtout s'il n'y a pas d'annulation ou de retour à la dernière fonction d'enregistrement. Et je suppose que fermer ne sauve pas.

0
user3082

Oui, le bouton d'enregistrement doit être désactivé s'il n'y a eu aucune modification.

Il est préférable que le nom du bouton souligne le fait qu'il enregistre les modifications, par exemple: Save Chages et il est accompagné d'un Cancel (ou fermer), le choix est donc évident pour l'utilisateur.

À moins que les modifications ne soient toujours appliquées avec succès (par exemple, pas en tant qu'appels HTTP séparés qui peuvent échouer) et que ce soit un modèle courant dans les applications, il est raisonnable d'afficher une notification pendant quelques secondes, que les modifications ont été appliquées avec succès.

0
Pavel

Cela dépend de la fréquence à laquelle votre utilisateur y apportera des modifications. Mais vous pouvez activer le bouton à tout moment et une fois que l'utilisateur y a apporté des modifications, assurez-vous d'informer l'utilisateur qu'il a bien été enregistré.

Par exemple

Enregistrer les modifications - Nom principal du bouton

Enregistré - Le nom du bouton changera après avoir déclenché le bouton Enregistrer les modifications et après quelques secondes. le nom sera de retour aux principaux.

J'espère que cela vous aidera

0
Jaime Caro

La chose la plus importante est que l'utilisateur connaît l'état du système "Puis-je effectuer une action et le système me dit-il que quelque chose s'est produit"

Lorsque l'état de sauvegarde est désactivé, vous dites à l'utilisateur que l'état de sauvegarde est à jour et que tout est enregistré. C'est une bonne chose. Tant que l'utilisateur le sait.

Avec la deuxième option, tant que vous signalez que le système enregistre, il ne devrait pas y avoir de problème. L'inconvénient est qu'il n'y a pas d'état pour indiquer la "sauvegarde"

La première option contient plus d'informations.

0
colmcq