2009-06-29 18 views

Respuesta

8

Si cancela la acción, se destruirán los datos o un dispositivo, sí. Por ejemplo, cancelar en el medio de actualizar el firmware de algún dispositivo.

Si la acción que se realiza lleva mucho tiempo y una cancelación accidental requerirá volver a empezar, sí.

Por ejemplo, I no encuentro molesto el pop-up aquí en StackOverflow cuando decido cerrar una pestaña en lugar de hacer una edición Empecé con una de mis preguntas.

+1

+1 para el caso de operaciones de toma de tiempo. Aunque no estoy de acuerdo con "Cancelar la acción destruirá los datos". Casi todos los formularios toman algunas entradas del usuario, si se presiona "Cancelar", que sea "Cancelar". – Hemant

9

No, a menos que sea algo que sea muy vital/potencialmente dañino. Tener ventanas emergentes seguidas de ventanas emergentes es molesto.

2

Haz la acción fácil de hacer sin confirmación (¡no molestes a tus usuarios!). Pero también hace que sea fácil de deshacer. Lea Alan Cooper's About Face para obtener un buen consejo de UI.

+0

¿Soy solo yo o el mecanismo de inserción de enlaces de SO es pestilente? –

+0

Es solo usted. No todos arrojan basura en enlaces. – GEOCHET

4

"Cancelar" significa renunciar a una acción antes de que comience. Si la acción ya ha comenzado, el comando debería llamarse "Detener" en su lugar. Eso deja en claro para el usuario que el botón puede interrumpir algo en mitad del flujo.

Una acción de cancelación real no necesita confirmación porque no causa ningún problema. Una acción de Parar podría, pero solo si detenerse a medio camino podría dejar las cosas en un estado arruinado. (Y en ese caso, debería considerar encontrar una forma de detener los cambios ya hechos para que el estado vuelva a ser lo que era antes de que comenzara la acción. Esto no siempre es posible, por supuesto, como si está eliminando archivos.)

2

Realmente depende de la situación.

La codificación de un video, por ejemplo, un proceso que puede llevar horas, debe tener una confirmación, simplemente porque accidentalmente puede presionar el botón al 99%.

El proceso de inicialización de un instalador u otra aplicación, por otro lado, no necesita una confirmación ya que normalmente se puede reiniciar lo suficientemente rápido y no requiere mucho tiempo para comenzar.

Si al hacer clic en Cancelar comienza un proceso que potencialmente llevará mucho tiempo (digamos que necesita invertir los cambios), se debe informar al usuario, posiblemente con una ventana emergente, pero un texto al lado del botón podría ser suficiente. bien.

La regla general es minimizar al máximo los cuadros de diálogo de confirmación, si, por ejemplo, podría reemplazarse con una acción Deshacer. Sin embargo, no creo que esto se aplique a la mayoría de los botones de Cancelar.

2

Utilice el siguiente algoritmo para determinar la respuesta a su pregunta:

if (1-p)*w > p*a then ask for confirmation 

donde

  • p es la probabilidad de que el usuario realmente quería cancelar (0.7 o menos)
  • w es la cantidad de perdida (de obra) el tiempo debido a inadvertida cancelando
  • a es el tiempo perdido debido a una confirmación anoying (5 segundos más o menos)

Por supuesto tiene que estimar p, w y a. Usando mis valores predeterminados, debe solicitar confirmación cuando la cancelación involuntaria le costaría al usuario más de 10.5 segundos de tiempo. Entonces, en el caso de una operación a largo plazo, p. Al codificar un video, no debe preguntar si el usuario hace clic en cancelar dentro de los 10 segundos después de comenzar esa tarea. En el caso de la entrada de datos, no pregunte si el formulario todavía está completamente vacío, pero pregunte si el usuario ya ha ingresado datos.

1

Básicamente, si deshacer una cancelación es difícil, lento o imposible, debe avisarle al usuario. Suelen ser el caso cuando el usuario ha realizado algunas acciones que podría desear conservar (por ejemplo, escribir una publicación de blog y cerrar una pestaña, actualizar el firmware en un dispositivo de hardware, ejecutar actualizaciones del sistema, instalar grandes piezas de software) en lugar de simplemente eliminar el estado actual. Después de todo, a veces se puede hacer clic accidentalmente en el botón cancelar. Solo necesita usar el sentido común para determinar si sería una experiencia realmente mala para el usuario si se cancelara accidentalmente una operación (lo que requeriría un aviso de cancelación), o si podrían reiniciar fácilmente cualquier operación cancelada accidentalmente sin mucha pérdida. . La estrategia que uso para resolver estos problemas es ponerme en el lugar del usuario, es decir, imaginarme como usuario de este programa. ¿Cómo me sentiría si accidentalmente hago clic en cancelar? Si esa mentalidad es desalentadora, agregue un aviso por si acaso.

0

Creo que la respuesta en términos de datos.

Si el usuario realizó cambios en los datos, sin hablar de hacer clic en algún lugar de la interfaz, se le debe pedir al usuario que confirme la salida. Pero si no se produjo ningún cambio, no hay razón para la confirmación. Porque la confirmación es un esfuerzo para el usuario.

1

Sería mejor no solicitar, pero es más fácil deshacer la cancelación una vez que se realiza, si es posible. GMail lo hace bien. Hace clic en 'Eliminar', elimina, pero obtiene un enlace en la parte superior para decir 'Deshacer borrar'.

Cuestiones relacionadas