GetDialogBaseUnits

Функция GetDialogBaseUnits возвращает системы диалоговое окно базовых единиц, средняя ширина и Высота символов в системный шрифт. Диалоговое окно использовать системный шрифт эти значения можно использовать для преобразования между подразделениями шаблон диалогового окна, как указано в диалогового окна Шаблоны и пикселей. Диалоговое окно не использовать системный шрифт преобразование из подразделений шаблон диалогового окна в пикселов зависит Шрифт диалогового окна.

Для обоих типов диалогового окна проще использовать функцию MapDialogRect для выполнения преобразования. MapDialogRect учитывает шрифта и будет правильно преобразован прямоугольник от подразделений шаблон диалогового окна Пиксели.

ДЛИННЫЙ GetDialogBaseUnits(VOID) 

Параметры

Эта функция не имеет параметров.

Возвращаемые значения

Возвращаемое значение является 32-разрядное значение, которое содержит базовые единицы диалогового окна. Младшее слово возвращаемого значения содержит горизонтальный диалогового окна поле Базовый блок, а старшее слово вертикальное окно box базовая единица.

Примечания

Горизонтальный базовой единицей, возвращенный GetDialogBaseUnits равны среднюю ширину в пикселах, персонажей в системный шрифт; вертикальной базовой единицей равен на высоту в пикселах, шрифта.

Для диалогового окна, которая не использует системный шрифт базовые единицы являются среднюю ширину и высоту в пикселах, символов в диалоговом окне Шрифт. Вы можете использовать GetTextMetrics и GetTextExtentPoint32 функции для вычисления этих значений для выбранного шрифта. Однако используя функцию MapDialogRect , позволит избежать ошибок, которые может привести, если ваши расчеты отличаются от тех, которые система.

Каждый горизонтальный базовая единица равна 4 единицы шаблон горизонтальных диалогового окна; Каждый вертикальных базовая единица равна 8 единиц шаблон вертикальных диалогового окна. Таким образом чтобы преобразования единиц шаблон диалогового окна в точки, используйте следующие формулы:

pixelX = (templateunitX * baseunitX) / 4 pixelY = (templateunitY * baseunitY) / 8 
 

Аналогично для преобразования из пикселей в единицах диалогового окна шаблон, с помощью следующих формул:

templateunitX = (pixelX * 4) / baseunitX templateunitY = (pixelY * 8) / baseunitY 
 

Умножение выполняется перед Отдел избежать округления проблемы если единицами измерения являются не делится на 4 или 8.

Windows CE: Windows CE поддерживает не все об ошибке значения для этой функции.

QuickInfo

nbsp; Windows &NT: требует версии 3.1 или более поздней версии.
Windows:Требует Windows 95 или более поздней версии.
Windows CE:Требует версии 1.0 или более поздней версии.
Заголовок:Объявленные в winuser.h.
Импорта библиотеки:Использование user32.lib.

Родственные слова

Обзор полей диалогового окна, диалогового окна функций, MapDialogRect

Index