MapDialogRect

MapDialogRect

MapDialogRect,是一個計算機函數

MapDialogRect


函數功能:該函數把指定的對話框單位映射成屏幕單位(像素)。函數MapDialogRect用變換坐標替換指定的RECT結構中的坐標,這就使得該結構可以用來創建對話框或定位對話框內的控制。
函數原型:BOOL MapDialogRect(HWND hDlg,LPRECT IpRect);
參數:
hDlg:標識對話框。MapDialogRect 函數只接收對話框創建函數中一個創建的對話框的句柄,對於其他窗口的句柄失效。
IpRect:指向一個含有將被轉變的對話框坐標的RECT結構。
返回值:如果消息被處理,則返回值為非零值。如果消息沒有被處理則返回值為零。若想獲得更多的錯誤信息,請調用GetLastError函數。

備註


MapDialogRect函數假定RECT結構內的起始坐標代表對話框單位。為把這些坐標從對話框單位轉變為像素,函數檢索對話框的當前水平和垂直基本單位,然後應用下列公式:
left=(left*baseunitX)/4;right=(right*baseunitX)/4top=(top* baseunitY)/ 8; bottom=(bottom* baseunitY)/ 8
在很多情況下,對話框的基本單位同用GetDialogBaseUnits函數檢索到的單位一樣。如果對話板模板有DS_SETFONT類型,那麼基本單位為模扳給定的字體中的字元的平均寬度和高度,單位為像素。
速查:Windows NT:3.1及以上版本:Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件:Winuser.h;庫文件:USer32.lib。