I remember once reading an article that said whenever you present a messagebox with a Yes/No
choice, you should always also provide a Cancel
button, even if it does the same as No
.
The rationale was that if the users know that Cancel
is always the "safe" button to click if they don't understand why the message box was displayed, or are confused by the question.
download bmml source – Wireframes created with Balsamiq Mockups
I've followed this advice for years (even though I can no longer remember where I originally heard it), but a number of people have complained about it, saying that they would prefer a simple Yes/No
.
So now I am wondering whether it is (or ever was) in fact best practice. If a message box presents a Yes/No
choice, should it also offer Cancel
(in the case where Cancel
and No
have the same effect)?
Answer
Undo
No, I don't think you should. Instead, you think re-think the whole idea. First of all: do you really, really need a popup dialog with a question like this? Wouldn't an easy to use, reliable Undo option be infinitely better? In that case, you can circumvent the whole Yes/No confirmation, and avoid context switches and generally getting into the users way.
Actions on dialog buttons
And if you really need a dialog box here: instead of putting Yes and No on your buttons in there, why not put the actual action on the buttons? You can do that by rephrasing the text in the dialog (which I hope you phrased so horribly on purpose here), and then name the Yes button "Invert" and the "No" button "Cancel" instead.
In general, I think it is wrong to have two differently named actions in a UI that do the same thing. That leaves users confused as to what are their differences. After all, if there is a Cancel button, it must do something else than No, right? So what exactly is that difference? You know the answer is "none", but does your user?
No comments:
Post a Comment