Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to deal with currently unavailable options? Locking vs. Hiding vs. Error messages
    primarykey
    data
    text
    <p>What is the best way to deal with input elements that are currently not available, or locked to a default value, e.g. a "state" field that is only relevant to some countries, a button for functionality that the current user is not authorized to use, or a dropdown menu entry that is only relevant when the user has selected something?</p> <p>There are 3 ways I've seen to deal with this, and all of them seem unsatisfying to me:</p> <ul> <li><strong>Locking the elements</strong> - can confuse and annoy users because it conveys no information about <em>why</em> they're locked. This question was actually prompted by me wanting to install east asian font support on Windows XP, finding the relevant checkbox in the control panel locked, and wondering about it for days before realizing that I was on a non-admin account.</li> <li><strong>Hiding the elements</strong> - Even more confusing and annoying when users see screenshots in a tutorial that differs from what they see - or are told by a helpdesk guy to click on a button that doesn't exist for them.</li> <li><strong>Showing an error message</strong> - best chance of conveying useful information, but might also be quite annoying when you have no visual cue about what you can and can't do.</li> </ul> <p>So are there any good alternatives (ideally with real life examples where they're used)? Rules of thumb when to use what? Strong arguments why to use locking anyway? It does seem to be the most commonly used, but I suspect that may only be so because everyone's copying it without thought.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload