Win32 API. Справочник по диалоговому окну
Страница 13. Функция GetDialogBaseUnits


Функция GetDialogBaseUnits

(ПолучитьОсновныеЕдиницыИзмеренияБлокаДиалога)

Функция GetDialogBaseUnits возвращает значения базовых единиц измерения блока диалога, которые использует Windows, чтобы создавать диалоговые окна. И Windows, и прикладные программы используют эти единицы измерения, чтобы преобразовывать ширину и высоту диалоговых окон и органов управления в единицы измерения блока диалога, как дано в шаблонах диалогового окна, в пиксели, и наоборот.

Синтаксис

LONG GetDialogBaseUnits(VOID)

Параметры
У этой функции нет параметров.

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

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

пиксельX = (единица диалогаХ * базовая единицаХ) / 4
пиксельY = (единица диалогаY * базовая единицаY) / 4

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

единица диалогаX = (пиксельХ * 4) / базовая единицаХ
единица диалогаY = (пиксельY * 4) / базовая единицаY

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

Смотри также
MapDialogRect

Размещение и совместимость GetDialogBaseUnits

Windows NTДа 
Win95Да
Win32sДа
Импортируемая библиотекаuser32.lib
Заголовочный файлwinuser.h
UnicodeНет
Замечания по платформеНе имеется

 
« Предыдущая статья   Следующая статья »