Обзор компонентов библиотеки C++Builder_______________________143

ется целая переменная I, отображающая число сотрудников некоторой организа-
ции, то вывести в метку Labell информацию об этом можно оператором:

Labell->Caption = "Число сотрудников: "+IntToStr(I) ;

Во всех компонентах цвет фона определяется свойством Color, а цвет надпи-
си — подсвойством Color свойства Font. Для метки Label цвет и шрифт — единст-
венно доступные элементы оформления надписи. Компоненты StaticText и Panel
имеют кроме того свойство BorderStyle, определяющее рамку текста — бордюр. А
компонент Panel имеет еще свойства Bevellnner, BevelOuter, BevelWidth, Border-
Width, которые предоставляют богатые возможности оформления надписи. Таким
образом, с точки зрения оформления выводимого текста максимальные возможно-
сти дает Panel и минимальные — Label.

Размещение всех рассматриваемых компонентов на форме определяется, в част-
ности, свойствами Top, Left, Height, Width, Aline, общими для всех оконных ком-
понентов. Эти свойства, определяющие координаты компонента, его размеры и их
изменение при изменении пользователем размеров родительского компонента, по-
дробно рассмотрены в разделе 4.2. Так что не будем здесь на этом останавливаться.

Размер меток Label и StaticText определяется также свойством AutoSize.
Если это свойство установлено в true, то вертикальный и горизонтальный размеры
компонента определяются размером надписи. Если же AutoSize равно false, то вы-
равнивание текста внутри компонента определяется свойством Alignment, которое
позволяет выравнивать текст по левому краю (значение taLeft Justify), правому
краю (значение taRightJustify) или центру (значение taCenter) клиентской облас-
ти. Аналогичным свойством Alignment определяется выравнивание текста и в па-
нели Panel.

В метке Label имеется также свойство Layout, определяющее выравнивание
текста в пределах метки по вертикали в случае, если AutoSize равно false. Значе-
ние tITop соответствует выравниванию по верхнему краю метки, tIBottom — по
нижнему, tICenter — по центру. В метке StaticText вертикальное выравнивание
всегда осуществляется по верхнему краю.

Свойство Wordwrap метки Label определяет допустимость переноса слов
длинной надписи, превышающей длину компонента, на новую строчку. Чтобы та-
кой перенос мог осуществляться, надо установить свойство Wordwrap в true,
свойство AutoSize в false (чтобы размер компонента не определялся размером над-
писи) и сделать высоту компонента такой, чтобы в нем могло поместиться несколь-
ко строк. В метке StaticText подобный перенос осуществляется автоматически,
если значение AutoSize установлено в false и размер компонента достаточен для
размещения нескольких строк. В панели размещение надписи в нескольких стро-
ках невозможно.

3.2.3 Окна редактирования Edit и MaskEdit

В компонентах Edit и MaskEdit вводимый и выводимый текст содержится в
свойстве Text. Это свойство можно устанавливать в процессе проектирования или
задавать программно. Выравнивание текста, как это имело место в метках и пане-
лях, невозможно. Перенос строк тоже невозможен. Текст, не помещающийся по
длине в окно, просто сдвигается и пользователь может перемещаться по нему с по-
мощью курсора. Свойство AutoSize в окнах редактирования имеет смысл, отлич-
ный от смысла аналогичного свойства меток: автоматически подстраивается под
размер текста только высота, но не ширина окна.

Окна редактирования снабжены многими функциями, свойственными боль-
шинству редакторов. Например, в них предусмотрены типичные комбинации «го-
рячих» клавиш: Ctrl-C — копирование выделенного текста в буфер обмена Clipbo-
ard (команда Copy), Ctrl-X — вырезание выделенного текста в буфер Clipboard