свойства положения и размеров winforms - PullRequest
6 голосов
/ 10 сентября 2010

Я пытаюсь распутать все свойства положения и размеров winforms, и было бы очень полезно, если бы был полный обзор, объясняющий отношения между ними. Многие из них кажутся функционально эквивалентными, но я обеспокоен тем, что могу делать некоторые ложные предположения.

Для справки я имею в виду такие свойства, как Screen.PrimaryScreen.Bounds против Form.DesktopBounds; Form.ClientRectangle vs Form.DisplayRectangle; Form.left против Form.Location.X; PointToScreen против Cursor.Position и так далее. Меня также особенно интересует влияние нескольких мониторов на свойства позиции.

Если кто-нибудь знает аннотированную диаграмму с изложением всего этого, это было бы замечательно.

1 Ответ

17 голосов
/ 10 сентября 2010

В качестве частичного ответа, описывая те свойства, которые вы перечислили выше:

  • Screen.PrimaryScreen.Bounds дает вам размеры для основного монитора.На установке с несколькими мониторами, в зависимости от того, какой экран установлен в качестве основного.
  • Form.DesktopBounds дает вам объединенную границу для всего «рабочего стола», который представляет собой виртуальный холст, охватывающий все активныемониторы.
  • Form.ClientRectangle предоставляет область (прямоугольник) клиентской области формы (пространство внутри хрома)
  • Form.DisplayRectangle аналогично Form.ClientRectangle, но включает хром (строка заголовка и рамка вокруг формы)
  • Form.Location.X и Form.Left - фактически одно и то же (также относится к верху и Y) с использованием верхнего левого угла в качестве 0,0 начала иувеличение x и y по направлению к нижнему правому углу
  • PointToScreen возвращает координату "экрана" - но, похоже, относительно общей площади рабочего стола;Cursor.Position возвращает аналогичное значение

Если вы хотите узнать больше о конфигурации экрана на клиенте, посмотрите класс Screen в MSDN.Также может представлять интерес свойство AllScreens, которое предоставляет вам подробную информацию о полной настройке.

Редактировать :

Ok - a(простой) обзор ;-) Я тоже могу быть ленивым!

Simple Overview of Position Properties

...