Каковы единицы для UserForm Left и Top в Word 2013 VBA?

Каковы единицы для UserForm.Left и UserForm.Top в Word 2013 VBA? MSDN не говорит . Этот ответ предполагает, что они могут быть твипами, но в моей системе они выводятся как 0.75*pixels.

То есть мой экран 1920x1200, но пользовательская форма, перемещенная в правый нижний угол, имеет Left=1440=1920*0,75 и Top=900=1200*0,75. В системе два монитора, каждый 1920x1200, разрешение экрана 96 DPI и TwipsPerPixel[XY]. оба возвращают 15. Всегда ли это три четверти пикселя, или мне нужно проверить какую-то другую системную метрику?


person cxw    schedule 17.07.2015    source источник


Ответы (1)


Что ж, ответ смотрел мне прямо в лицо, так что вот он, на случай, если кому-то еще пригодится. Если у вас есть более надежный ответ, пожалуйста, опубликуйте его!

Единицами были пункты, 72 на дюйм. (72 = 96 dpi * 0,75.) Я преобразовал пиксели в точки с

pts = Application.PixelsToPoints(pxls)

а затем использовал pts для Left и Top. Width и Height тоже в баллах в моей системе.

person cxw    schedule 17.07.2015