Designing Accessible Applications
The remaining sections of this document describe specific guidelines that can be used when designing a mainstream application for use by individuals with disabilities. The guidelines fall into two categories: end-user features that make the application more usable and programming techniques that make the application compatible with accessibility aids. The following sections expand on the lists provided earlier in this document.
It is impossible for any written guidelines to cover every situation, so it is worth restating the basic principles that underlie accessible design:
- Provide a flexible, customizable user interface for your application that can accommodate the user's needs and preferences. For example, you should allow the user to choose font sizes, reduce visual complexity, and customize the arrangement of menus.
- Make your application's behavior consistent with other Windows-based applications and with system standards. For example, you should support Control Panel settings for colors and sizes and follow standard keyboard behavior.
- Support the user's choice of output methods through the use of sound and visuals and of visual text and graphics. You should combine these output methods redundantly or allow the user to choose his or her preferred output method.
- Support the user's choice of input methods by providing keyboard access to all features and by providing access to common tasks using simple mouse operations.
- Use programming techniques and user-interface elements that are compatible with accessibility aids, such as blind access, screen magnification, and voice input utilities.
By keeping these principles in mind and by following the specific recommendations in this document, you should be able to address most issues encountered when designing an application for accessibility.