Im Großen und Ganzen saugen Modal-Interfaces große Steine. Auf der anderen Seite kann ich mir keinen besseren Weg vorstellen, Datei öffnen ... oder Drucken ... zu handhaben, und das, denke ich, ist weil
Lass uns einen kleinen Style-Guide zusammenstellen. Schlagen Sie Anwendungsfälle vor, in denen ein Dialog die bevorzugte Präsentation ist und warum dies bevorzugt wird. Kann der Dialog nicht modal sein? Wenn ja, wie markieren Sie Transaktionsgrenzen, da Cancel keine eindeutige Bedeutung mehr hat. Verwenden Sie zum Beispiel eine Schaltfläche Übernehmen?
IMO, modale Schnittstellen sollten nur verwendet werden, wenn Sie HABEN mit dem zu tun haben, was der Dialog gerade tut oder fragt, bevor die Anwendung fortfahren kann. Wenn Sie ein Dialogfeld verwenden, sollte es zu einem anderen Zeitpunkt nicht modal sein.
Wenn Sie nicht-modale Fenster erstellen, möchten Sie vielleicht sicherstellen, dass sie eindeutig sind: Sie wollen nicht wirklich zwei identische Werkzeugkästen (in einem grafischen Programm zum Beispiel) oder zwei identische Voreinstellungen (ich sah das in einem Produkt), was im besten Fall verwirrend sein kann.
Andererseits schätze ich es, wenn ein Suchen / Ersetzen-Dialog nicht-modal ist: Ich kann zurück zum Dokument gehen und die letzte Änderung abbrechen, woanders überspringe usw .; ohne die aktuellen Einstellungen zu verlieren.
Irgendwie sagen modale Dialoge dem Benutzer "alles andere zu stoppen und zu beenden, was Sie tun", was seine Verwendung hat, wie in Stephen Wrightons Antwort .
Meiner Erfahrung nach gibt es nur sehr wenige Dinge, die in einer Benutzeroberfläche modal sein sollten. Eines der besten Beispiele, und wahrscheinlich ein sehr vertrauter Benutzer der Website, ist Eclipse. Obwohl es einige modale Dialoge gibt und ich hier nur von der Kern-IDE spreche, fallen sie weitgehend in drei Kategorien: Dateioperationen, Präferenzdialoge und Parameterdialoge.
Vorzugsdialoge, die traditionell modal sind, müssen auch nicht modal sein. Sie müssen sich nur das Mac OS-Einstellungsmodell ansehen, in dem Konfigurationsänderungen sofort vorgenommen werden. Modales Verhalten wird nur dann eingeführt, wenn die Änderung die laufende Arbeit stören könnte.
Kurz gesagt, hier ist, was ich sagen würde, ist eine gute Zusammenfassung dessen, was modal sein sollte. Ausnahmen von diesem Satz sollten durch die Verwendung gut begründet sein.
Wie wäre es mit einem Benutzeranmeldefenster, können Sie den Rest einer Anwendung nicht verwenden (oder sollten nicht), bis Sie sich angemeldet haben, vorausgesetzt, dass Sicherheit erforderlich ist.
Ich denke, der Unterschied besteht darin, dass, wenn es überhaupt etwas gibt, was ein Benutzer in der Anwendung tun kann, während das Dialogfeld angezeigt wird, es nicht modal sein sollte. Dies beinhaltet Kopier- und Einfügeaktionen. Persönlich würde ich es vorziehen, wenn Datei- / Öffnen- und Druckdialoge auch nicht modal waren. Ich denke, modale Dialoge sind ein Zeichen für schwaches Design, ein notwendiges Übel, um Code schnell aus der Tür zu bekommen.
Tags und Links user-interface modal-dialog