|
#1
|
|||
|
|||
формы в delphi
Всем здравствуйте! Как автоматически отредактировать размер форм в программе под любое разрешение
|
#2
|
||||
|
||||
Воспользуйтесь классом "TScreen".
"Класс TScreen инкапсулирует состояние экрана или выводимой области. Delphi во время работы автоматически создаст экземпляр класса TScreen. Для его использования в раздел uses нужно включить модуль Forms. В любом месте приложения можно использовать такие свойства этого класса, как Height (высота экрана) и Width (ширина экрана). Это может потребоваться, например, тогда, когда нужно сделать размеры формы приложения постоянными и равными половине размеров экрана при любом разрешении монитора. Для автоматического масштабирования формы можно в обработчик события OnCreate формы поместить такой код: Form1.Width:=Screen.Width div 2; Form1.Height:=Screen.Height div 2; Разрешающую способность экрана можно узнать, воспользовавшись свойством PixelsPerInch, указывающее количество пикселей на дюйм в вертикальном направлении. Это справедливо именно для вертикального направления, так как во многих мониторах коэффициенты масштабирования по горизонтали и вертикали различаются. Класс TScreen имеет свойство Forms, содержащее список форм, отображаемых в данный момент на экране, и свойство FormCount, где находится количество таких форм. Можно использовать эти свойства для того, чтобы гарантировать, что на данном типе монитора размеры ни одной формы не превысят размеров экрана. Соответствующей код может выглядеть так: With Screen Do For i:=0 to FormCount-1 do Begin If Forms[i].Height > Height Then Forms[i].Height:= Height; If Forms[i].Width > Width Then Forms[i].Width:= Width; End;" Последний раз редактировалось Admin, 07.10.2005 в 11:07. |
#3
|
||||
|
||||
Вообще то лучше пользоваться такими пропертями как Align и Anchors. Иногда можно для красявости и Position приплести. И не стоит заморачиваться такими вопросами, имхо.
|
#4
|
|||
|
|||
Большое спасибо за помошь, обязательно воспользуюсь Вашими советами!
|
#5
|
|||
|
|||
Спасибо
Огромное спасибо, уважаемый Admin, за полноценные советы и помошь! Непременно воспользуюсь Вашими подсказками!
|