Страницы: 1
RSS
Перевод Pixels в Points
 
Уважаемые коллеги!  
Подскажите, ато что-то сам не могу найти ответ.  
В VBA есть функция ActiveWindow.PointsToScreenPixelsX, которая переводит размеры документа в экранные пиксели. Мне же нужно совсем наоборот: знаю разрешение экрана и исходя из него хочу задать размеры формы. Есть такая функция?  
 
З.Ы.: небольшой вопрос в догонку по теме. При активации формы меняю ее размеры и хочу расположить форму по центру. Но "Me.StartUpPosition = CenterScreen" в конце процедуры не отрабатывает. Что-то нужно сделать еще?  
Заранее спасибо.  
________________________  
khafizovtt@gmail.com
Учимся сами и помогаем другим...
 
>>> Вообще 3 поинта это 4 пиксела. Т.е. 1 поинт - 1,333 пиксела.  
интересно на всех ли мониторах это так? Мне кажется это число может отличаться.  
Как выход тогда буду через PointsToScreenPixelsX вычислять текущее отношение и его использовать.  
 
>>> Что то формы, то может указать свойство StartUpPosition = 1(т.е. CenterOwner)  
Это не помогло (  
________________________  
khafizovtt@gmail.com
Учимся сами и помогаем другим...
 
на моем широкоформатном мониторе (1920х1080) PointsToScreenPixelsX(100)=126, а PointsToScreenPixelsY(100) = 363 !!!!  
Как это понять?  
________________________  
khafizovtt@gmail.com
Учимся сами и помогаем другим...
 
В общем моя цель показывать форму вот так:
Учимся сами и помогаем другим...
 
Но пока получается только так:  
 
Покажите в чем ошибка?  
________________________  
khafizovtt@gmail.com
Учимся сами и помогаем другим...
 
Принудительно при вызове формы  
Me.Left = Application.Left + (Application.Width - Me.Width) \ 2
 
Спасибо. забыл про этот способ. Сам раньше им пользовался :-)  
Для себя все вопросы закрыл. Еще раз всем спасибо.  
________________________  
khafizovtt@gmail.com
Учимся сами и помогаем другим...
Страницы: 1
Читают тему
Наверх