Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This function converts, or maps, the specified dialog box units to screen units, or pixels. The function replaces the coordinates in the specified RECTstructure with the converted coordinates, which allows the structure to be used to create a dialog box or position a control within a dialog box.

Syntax

BOOL MapDialogRect( 
  HWND 
hDlg, 
  LPRECT 
lpRect
);

Parameters

hDlg

[in] Handle to a dialog box. This function accepts only handles returned by one of the dialog box creation functions; handles for other windows are not valid.

lpRect

[in] Long pointer to a RECTstructure that contains the dialog box coordinates to be converted.

Return Value

Nonzero indicates success. Zero indicates failure. To get extended error information, call GetLastError.

Remarks

The MapDialogRectfunction assumes that the initial coordinates in the RECTstructure represent dialog box units. To convert these coordinates from dialog box units to pixels, the function retrieves the current horizontal and vertical base units for the dialog box, then applies the following formulas.

Copy Code
left   = (left   * baseunitX) / 4 
right  = (right  * baseunitX) / 4 
top	= (top	* baseunitY) / 8 
bottom = (bottom * baseunitY) / 8 

The base units for the dialog box are the same as those retrieved by using the GetDialogBaseUnitsfunction.

If one of the dimensions specified in the RECTstructure is not a multiple of four, MapDialogRectalways results in a rectangle that one pixel more for that dimension.

Requirements

Header winuser.h
Library Dlgmgr.lib
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also