February 24th, 2006

Why can't I disable the Cancel button in a wizard?

The PropSheet_SetWizButtons macro lets you manipulate many of the buttons on a wizard, but the Cancel button remains elusive. Why can’t you disable the Cancel button or the “X” button? Because our users tell us they don’t like it. Observation of users in our labs and interviews with them reveal that wizards that disable the Cancel button cause them stress and frustration. Put yourself in their shoes: You’ve started some operation, the wizard asks you a few questions, you answer them, and then, uh-oh, it asks a question you can’t answer, or you realize that you don’t want to do it after all because the wizard told you that completing the task will have some undesired side-effects or because one of the steps is taking too long. You want to cancel out of the wizard. But the wizard won’t let you. “Ha-ha. Now I’m going to force you to do what I tell you! You’re trapped, I say, trapped! Mwaaa-ha-ha-ha-ha!”

Don’t do that to your users. It only upsets them. Let them cancel and live another day.

Topics
Other

Author

Raymond has been involved in the evolution of Windows for more than 30 years. In 2003, he began a Web site known as The Old New Thing which has grown in popularity far beyond his wildest imagination, a development which still gives him the heebie-jeebies. The Web site spawned a book, coincidentally also titled The Old New Thing (Addison Wesley 2007). He occasionally appears on the Windows Dev Docs Twitter account to tell stories which convey no useful information.

0 comments

Discussion are closed.