转自:MSDN
此函数在设备应用程序项目中启用设备分辨率识别功能。
设备分辨率识别功能使应用程序可以在运行时响应分辨率的更改,例如,从纵向模式更改为横向模式。
请在直接实例化 CDialog 时使用 AfxEnableDRA() 函数。在此情况下,您使用的是在 dlgcore.cpp 中定义、在 MFC DLL 和 LIB 中实现的 OnSize 方法。在这些库版本中,AfxIsDRAEnabled() 用于执行运行时检查,以便确定是否调用 DRA::RelayoutDialog(...)。只有在先调用了AfxEnableDRA(TRUE) 的情况下,AfxIsDRAEnabled() 才返回 True。
示例代码:
AfxEnableDRA(TRUE); //Enable Device Resolution Awareness
...
void CDialog::OnSize(UINT nType, int cx, int cy)
{
if (AfxIsDRAEnabled())
{
DRA::RelayoutDialog(
AfxGetInstanceHandle(),
this->m_hWnd,
DRA::GetDisplayMode() != DRA::Portrait ?
m_lpszWideTemplateName : m_lpszTemplateName);
}
else
{
CWnd::OnSize(nType, cx, cy);
}
}
博主备注:
OnSize函数在创建一个基于CE的MFC程序时就会自动重载。在对话框类的构造函数里添加Enable