Проектирование графического интерфейса пользователя______________297

а затем восстановить значение глобального курсора оператором

Screen->Cursor = crDefault;

Вы можете использовать ваш зарегистрированный курсор и как локальный,
например, для панели Panell оператором

Panell->Cursor = crMyCursor;

С помощью Screen можно получить доступ к активной в текущий момент фор-
ме вашего приложения через свойство ActiveForm. Если в данный момент пользо-
ватель переключился с вашего приложения на какое-то другое и, следовательно,
ни одна форма вашего приложения не активна, то ActiveForm указывает на фор-
му, которая станет активной, когда пользователь вернется к вашему приложению.
В момент переключения фокуса с одной вашей формы на другую, генерируется
событие OnActiveFormChange.

Аналогично с помощью свойства ActiveControl можно получить доступ к ак-
тивному в данный момент оконному компоненту на активной форме. При смене
фокуса генерируется событие OnActiveControlChange.

В C++Builder 4 предусмотрена возможность разработки мультиэкранных при-
ложений, работающих одновременно с множеством мониторов. При этом приложе-
ние может решать, какие формы и диалоги надо отображать на том или ином мони-
торе. Свойства различных мониторов, используемых в таком приложении, можно
найти с помощью свойства Screen->Monitors[ I ], где I — индекс монитора. Индекс
О относится к первичному монитору. Свойство Screen->Monitors[ I ] является спис-
ком объектов типа TMonitor, содержащих информацию о конкретных мониторах.

Среди свойств объектов типа TMonitor имеются Height — высота и Width —
ширина экрана монитора. Кроме того имеются свойства Left и Тор. Эти свойства
означают следующее. Все доступное экранное пространство можно представить
себе разбитым на экраны отдельных мониторов, размещающихся слева направо и
сверху вниз. Соответственно свойства Left и Тор определяют координаты левого
верхнего угла экрана монитора в этом логическом экранном пространстве. Объек-
ты типа TMonitor имеют также свойство MonitorNum — номер монитора, пред-
ставляющий собой его индекс в свойстве Screen->Monitors[ I ].

Для управления тем, на каком мониторе должна появляться та или иная форма,
служит свойство формы DefaultMonitor. Это свойство может принимать значения:

dmDesktop       не предпринимается попыток разместить форму на конкрет-
ном мониторе

dmPrimary       форма размещается на первом мониторе в списке Scre-
t                  en->Monitors

dmMainForm     форма появляется на том мониторе, на котором размещена
главная форма"

dmActiveForm   форма появляется на том мониторе, на котором размещена
текущая активная форма

4.8 Печать и разработка отчетов

4.8.1 Печать с помощью различных функций
4.8.1.1 Печать форм методом Print

Формы в C++Builder имеют метод Print, который печатает клиентскую об-
!    ласть формы. При этом полоса заголовка формы и полоса главного меню не печата-