Поделиться через


AfxEnableDRA

Обновлен: Ноябрь 2007

Эта функция включает распознавание разрешения экрана в проектах приложений для устройств.

void AfxEnableDRA(BOOL bEnable);

Параметры

  • bEnable
    Указание значения TRUE приведет к распознаванию разрешения устройством; указание значения FALSE или отсутствие вызова этой функции приведет к отключению распознавания разрешения.

Заметки

Функциональная возможность распознавания разрешения экрана устройством позволяет приложениям реагировать на изменения разрешения во время выполнения, например изменять ориентацию с книжной на альбомную.

Используйте функцию AfxEnableDRA() для создания экземпляра CDialog напрямую. В этой ситуации используется метод OnSize, определенный в dlgcore.cpp и реализованный в MFC DLL и LIB. В этих версиях библиотек AfxIsDRAEnabled() используется для выполнения проверки во время выполнения для определения необходимости вызова DRA::RelayoutDialog(...). AfxIsDRAEnabled() возвращает значение true, только если до этого был вызван объект AfxEnableDRA(TRUE).

ms228822.alert_note(ru-ru,VS.90).gifПримечание.

При использовании мастеров для создания проекта MFC для устройства созданный код реализует переопределение (CDialog::OnSize(int, int)) для классов, производных из CDialog. Затем распознавание разрешения экрана проверяется во время компиляции и принимается решение о необходимости вызова DRA::RelayoutDialog(...).

Пример

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);
    }
}

См. также

Другие ресурсы

Уникальные классы библиотеки MFC для устройств