Access 2002

Необходимая информация


Его нужно еще умножить на отношение размеров пикселя в твипах. (При разрешении 640×480 пиксель «больше», чем при разрешении 1024×768.) На  7.31, как форма размером 320×240 пикселей, созданная при разрешении 640×480, выглядит при разрешении 1024×768. В первом примере эта форма не масштабирована, а во втором — масштабирована.

Для правильного масштабирования формы коду прежде всего нужно знать, при каком разрешении экрана вы ее создавали. Зная это разрешение, он вычислит отношение ширины экрана к его высоте. Кроме того, коду нужно знать количество точек на логический дюйм (DPI, dots-per-inch) по горизонтали и по вертикали (также во время создания формы). Первое вам, скорее всего, известно, а второе — вряд ли. Поэтому мы предлагаем воспользоваться формой frmScreenlnfo,  7.32. Эта форма предназначена для определения текущих установок экрана, которые вам нужны для правильного вызова метода SetDesign- Coords (мы поговорим о нем чуть позже).

Код этой формы вычисляет текущий размер экрана, принимая во  области, занятые закрепленными у его краев панелями задач. Кроме того, он определяет количество точек на логический дюйм по вертикали и по горизонтали и формирует строку вызова метода SetDesignCoords. Открыв форму, вы можете скопировать эту строку через буфер обмена в обработчик события Open разрабатываемой вами формы. (Предполагается, что переменную, в которой хранится ссылка на объект FormResize, вы назвали frmResize. Если вы выбрали для нее другое имя, измените его в вызове метода.)

    

При определении разрешения экрана форма frmScreenlnfo учитывает размер панели задач (и других закрепленных панелей Windows, уменьшающих клиентскую область экрана). Если ваш пользователь ею не пользуется, вы можете временно скрыть и собственную панель. (Обычно для этого применяется опция Auto hide в окне свойств панели задач.) Если вы скроете панель задач, а у пользователя она останется, ваша форма получится меньше, чем нужно.

Комментарии закрыты