Читать книгу The Art in Business System Design - Jeff Chapman - Страница 20
The Art in Courtesy
ОглавлениеA typical Windows form has multiple small visual cues that you can leverage to provide the ultimate courtesy to your client. When you are traveling to a new city on a train as a tourist you expect (and the railway provides) a significant amount of common courtesy to make your traveling to the strange land less stressful and more enjoyable. Every new or intermittent user of your software is like one of these tourists and so you should extend them the same courtesies.
Begin by considering the lowly mouse-pointer icon. You should change this to different icons under numerous circumstances to signal processing conditions. Always change the pointer to an hourglass if your process is running a thread that disables user input. Change it to a question mark when they hover over a label and then provide help about the field when they click on that label. When a user hovers over a field they may be confused about what to enter. You may pop up a short callout of information or a help-button icon that will display a sub form. So now you’ve got your traveler’s help kiosk all built and wired.
Use the status area strip at the base of a form to show messages about the internal tasks you are performing. Provide a bit of message detail to assist you in debugging a client’s problem during operation. When you expect the user to enter data in a specific format overlay a graphic example (mm/dd/yy).
Make the effort to disable buttons, checkboxes, menu items, and fields when they are logically unavailable. If a form requires the user to enter fields before he presses the submit key then that button should not enable until all the required fields have been entered. Always behave in a manner to prevent mistakes proactively.
Indicate required fields in a manner that is both clear and consistent yet discreet. Take advantage of a changeable title bar: it can show both variable words and an icon and these also display when your application is minimized. So now you have all of the railway’s interactive signage built.
A mouse usually has two buttons… take advantage of this by providing right-click context menus where appropriate. Finally on any operation that requires extensive processing time, display a progress bar showing the estimated time to completion. Run the long task in a background thread so that the user interface can still be moved or minimized. And remember to provide a button to cancel any long-running operation! So that creates the ever helpful train conductor.
Correctly handling all the small visual cues requires quite a bit more effort during development, but doing so marks the difference between a hackney carrier and a professional developer.