Overview

Only about 55% of users actually set their display to the maximum resolution. Most users who use lower resolution do so because they find the text too small at the maximum resolution. However, simply reducing the resolution has some negative side effects, including:

  • ClearType® does not render correctly at non-native resolution
  • Users cannot see high definition content at full fidelity
  • High-resolution photos cannot be rendered in maximum fidelity

To increase the size of the text, users are encouraged to increase the DPI setting to take advantage of their display at high fidelity, rather than reduce the resolution and suffer the negative side effects. However, while this solves the problem with loss of fidelity, applications that are not DPI-aware often have some unpleasant visual artifacts, as you will experience later in this module.

With the release of Windows 7, there is a greater level of adoption of high DPI for the following reasons:

  • More OEMs are expected to start shipping laptops with high DPI settings preconfigured
  • Clean installations of Windows 7 have capable devices preconfigured to high DPI
  • The Control Panel UI for high DPI is easier to find

Adding high DPI support to your application is more important than ever. The following exercises take a basic Win32 application and show you how to make it DPI-aware.

Objectives

In this lab, you will learn how to:

  • Ensure that the computer is in high DPI mode
  • Compare UI elements at the 144 DPI setting and the 96 DPI setting
  • Mark the application as DPI-aware
  • Scale the button size and layout
  • Scale the window size and use the default theme text API for text

System Requirements

You must have the following items to complete this lab:

  • Microsoft Visual Studio® 2008
  • Windows 7