Свойства стандартных компонентов Delphi
Рассмотрим свойства, которые имеют стандартные компоненты Delphi.
Свойство Action предназначено для определения действия, связанного с элементом управления (меню, кнопкой и т. д). Значение данного свойства устанавливается во время разработки приложения, путем выбора из выпадающего списка предусмотренных действий. Данный список формируется путем размещения на форме компонента TActionList и задания его свойств.
Свойство Active предназначено для определения наличия соединения с базой данных, а также для установки или отключения этого соединения. Данное свойство может принимать одно из двух значений: false или true. Если значение свойства равно false, то в этом случае база данных является закрытой и работа с ней (чтение или запись данных) невозможна. Если вы установите свойство Active в true, то произойдет следующее:
- приложение сгенерирует событие BeforeOpen;
- набор данных (свойства state) установится в состояние dsBrowse;
- в наборе данных установится курсор;
- приложение сгенерирует событие AfterOpen.
Данное свойство можно установить непосредственно, например:
Tablel.Active := true;
или с помощью вызова методов open (установка свойства Active в true) или
Close (false): Tablel.Open;
Свойство Align предназначено для задания способа выравнивания компонента внутри компонента контейнерного типа. Перечислим возможные значения данного свойства.
- alNone - компонент остается на том месте, где он был размещен во время разработки приложения. Данное значение присваивается свойству Align по умолчанию.
- alTop - компонент занимает всю верхнюю часть компонента-контейнера. Во время выполнения приложения ширина компонента зависит от ширины компонента-контейнера. Высота компонента остается неизменной независимо от высоты контейнера.
- alBottom - аналогичен значению aiTop, за исключением того, что компонент занимает всю нижнюю часть компонента-контейнера.
- alLeft - компонент занимает всю левую часть компонента-контейнера. Во время выполнения приложения высота компонента зависит от высоты компонента-контейнера. При изменении ширины компонента-контейнера ширина компонента остается неизменной.
- alRight - аналогичен значению alLeft, за исключением того, что компонент занимает всю правую часть компонента-контейнера.
- alclient - компонент занимает всю клиентскую часть компонента-контейнера. При изменении высоты и ширины компонента-контейнера меняется высота и ширина компонента. Если в клиентской части компонента контейнерного типа уже имеются другие компоненты, то данный компонент занимает всю оставшуюся незанятую часть компонента-контейнера.
Примечание
Значения alTop и alBottom имеют больший приоритет по сравнению со значениями alLeft и aiRight. Таким образом, если вы вывели на форму два компонента, присвоив свойству Align одного из них значение alTop, а другого - alRight, то первый компонент вытеснит верхнюю часть второго компонента (рис. 2.1).
Свойство Anchors предназначено для определения привязки компонента к родительскому компоненту при изменении размеров родительского компонента. Данное свойство было введено начиная с Delphi 4. Это свойство имеет тип множества, которое может содержать такие элементы:
- akTop - компонент привязан к верхнему краю родительского компонента; - akLeft - компонент привязан к левому краю родительского компонента;
- akBottom - компонент привязан к нижнему краю родительского компонента;
- akRight - компонент привязан к правому краю родительского компонента.
Рис. 2.1. Применение свойства Align
В случае, когда существует привязка к противоположным сторонам родительского компонента, при изменении его размеров будет происходить сжатие или растяжение дочернего компонента вплоть до полного исчезновения его изображения. Таким образом, данное свойство определяет как бы фиксацию расстояния от компонента до краев родительского компонента.
Свойство AutoCalcFields определяет режим автоматической генерации события onCalcFields. Данное свойство установлено в true по умолчанию. В этом случае события onCalcField, связанные с пересчетом вычисляемых полей таблицы данных, генерируются в следующих случаях:
- когда открывается набор данных;
- когда набор данных переводится в состояние dsEdit;
- когда фокус переходит между компонентами, содержащими данные или перемещается по столбцам таблицы, связанной с данными;
- когда ищется какая-либо запись.
Для того чтобы уменьшить время, необходимое на пересчет вычисляемых полей, можно установить свойство AutoCalcField В false.
Свойство AutoEnable служит для задания автоматического определения доступных кнопок медиаплейера в разных режимах. Если это свойство установлено в true, то значение, заданное свойством EnabledButtons, игнорируется. В противном случае доступные кнопки определяются свойством EnabiedButtons (описание этого свойства см. далее).
Свойство AutoMerge применяется для того, чтобы объединить меню вторичных форм c меню главной формы. Для этого нужно в каждой вторичной форме установить данное свойство в true.
Примечание
В приложениях MDI установка свойства AutoMerge необязательна, т. к. все равно будет выполнено объединение меню.
Свойство AutoOpen предназначено для автоматического открытия медиа-плейера во время выполнения приложения. Если данному свойству присвоить значение true, то медиаплейер автоматически откроет при создании формы устройство, указанное в свойстве DeviceType (описание этого свойства см. далее). В случае если при открытии устройства возникает ошибка, то приложение генерирует исключение EMClDeviceError. Если значение свойства AutoOpen равно false, то для открытия устройства необходимо использовать метод Open.
Свойство AutoSelect показывает, будет ли текст, содержащийся в компоненте, выделяться в тот момент, когда данный компонент получает фокус. Это свойство не применяется в многострочных редакторах (таких как Memo, RichEdit и др.). Если данное свойство имеет значение true, то текст, содержащийся в однострочном редакторе, будет выделен при получении фокуса. Свойство AutoSelect удобно применять, когда пользователь, скорее всего, будет вводить новое значение в поле для ввода вместо старого, а не редактировать.
Свойство AutoSize применяется для того, чтобы приложение автоматически устанавливало высоту поля для ввода (Edit), в зависимости от высоты используемого шрифта. Если значение данного свойства равно true, то поле для ввода будет автоматически изменять размер при смене размера используемого в нем шрифта.
Свойство Bitmap предназначено для указания на объект типа TBitmap, который содержит изображение. В случае если свойство Bitmap не пустое, то свойство style игнорируется и в качестве шаблона заполнения берется объект, на который указывает свойство Bitmap.
Свойство BoundsRect применяется для получения одновременно координат всех четырех вершин компонента.
Примечание
Данные координаты можно получить из следующих свойств компонента: Left (левый край компонента), тор (верхний край), width (ширина компонента) и Height (высота). Описание этих свойств мы приведем ниже.
Началом координат считается левый верхний угол окна, содержащего данный компонент.
Свойство Break предназначено для разбивания списка разделов меню на несколько столбцов. Это свойство может принимать следующие значения:
- mbNone - нет разбивки (установлено по умолчанию);
- mbBarBreak - в меню добавляется новый столбец разделов и отделяется от предыдущего полосой;
- mbBreak - в меню добавляется новый Столбец разделов и отделяется от предыдущего пробелами.
Рассмотрим пример (рис. 2.2).
В данном примере мы отделили Первый раздел меню от Второго полосой (установили значение свойства Break для Второго раздела в mbBarBreak), а также отделили Третий и Четвертый разделы меню от Второго пробелами (установили значение свойства Break для Третьего раздела в mbBreak).
Рис. 2.2. Разбиение меню приложения на столбцы разделов с помощью свойства Break
Свойство Brush применяется для чтения текущего значения цвета и стиля заполнения фона окна. Обратите внимание на то, что данное свойство предназначено только для чтения. Но значение этого свойства можно изменить при помощи изменения свойств Color и style.
Свойство Canvas предназначено для рисования, изменения изображения и других действий с изображениями. Данное свойство имеется у тех компонентов, которые имеют поверхности для рисования.
Свойство Capabilities определяет возможности открытого устройства мультимедиа. Данное свойство устанавливается при открытии устройства мультимедиа методом Open. Это свойство доступно только для чтения. Свойство capabilities может принимать следующие значения:
- mpCanEject - возможно освобождение объекта, загруженного в устройство; - mpCanPlay - возможно воспроизведение; - mpCanRecord - возможна запись;
- mpcanstep - возможно перемещение на задаваемое число кадров вперед и назад;
- mpuseswindow - возможно использование окна для отображения выходного изображения.
Свойство capacity применяется для определения количества элементов, которые могут храниться в компоненте класса TList. В случае, когда при увеличении значения данного свойства возникает нехватка оперативной памяти, генерируется исключение EOutOfMemory. Свойство capacity отличается от похожего свойства Count тем, что хранит в себе число, указывающее, сколько элементов может храниться в Компоненте класса TList, a count показывает, сколько элементов действительно хранится в компоненте. Таким образом, значение свойства capacity всегда больше или равно значению свойства count. При увеличении значения свойства count, в случае необходимости, происходит увеличение значения Capacity. Данное свойство применяется для того, чтобы предотвратить слишком частое перераспределение оперативной памяти. Если принудительно задать значение свойства capacity меньше, чем значение свойства count, приложение сгенерирует исключение EListError.
Свойство caption связывает с компонентом некоторую строку текста, поясняющую его назначение. Данная строка является обычно заголовком компонента (заголовком кнопки, метки, пункта меню и др.). По умолчанию это свойство устанавливается таким же, как имя компонента (свойство Name). Для пунктов меню и кнопок с помощью этого свойства можно задать кнопку быстрого вызова. Для этого перед символом кнопки быстрого вызова ставится символ амперсанда (&). Например, для быстрого вызова меню Файл перед буквой "Ф" в свойстве caption данного пункта меню можно поставить знак &: &Файл. При этом буква "Ф" в пункте меню будет подчеркнутой. Теперь для вызова данного пункта меню достаточно нажать комбинацию клавиш <А1t>+<Ф>.
Свойство charset применяется для задания используемого набора символов шрифта. Каждый вид шрифта поддерживает один или несколько наборов символов. Ниже приведена сокращенная таблица констант, применяемых в данном свойстве (табл. 2.2).
Таблица 2.2. Константы наборов символов
Константа |
Числовое значение |
Набор символов |
||
ANSI CHARSET |
0 |
Символы ANSI |
||
DEFAULT_CHARSET |
1 |
Символы, установленные по умолчанию. Шрифт выбирается только по имени (Name) и размеру (size) |
||
SYMBOL CHARSET |
2 |
Стандартный символьный набор |
||
MAC__CHARSET |
77 |
Набор символов Macintosh |
||
GREEK CHARSET |
161 |
Набор греческих символов |
||
RUSSIAN_CHARSET |
204 |
Кириллица |
||
EASTEUROPE CHARSET |
238 |
Набор, включающий в себя символы, добавляемые к основным буквам для восточноевропейских языков |
||
OEM_CHARSET |
255 |
Набор символов операционной системы |
||
В некоторых случаях, для того, чтобы правильно отображались русские шрифты, полезно установить значение свойства charset в RUSSIAN_CHARSET.
Свойство clientHeight предназначено для установки или чтения высоты клиентской области компонента. Данное свойство применяется при изменении размеров компонента, который содержит в себе другие компоненты. При таком изменении будет происходить изменение компонентов, содержащихся в компоненте-контейнере.
Свойство clientorigin предназначено для получения экранных координат (х и у) левого верхнего угла клиентской области компонента. Началом координат является верхний левый угол экрана. Возвращаемые координаты передаются в структуре типа TPoint. Данное свойство предназначено только для чтения.
Свойство clientRect возвращает координаты углов клиентской области компонента. Данное свойство также предназначено только для чтения. Координаты возвращаются в структуре типа TRect.
Свойство clientwidth предназначено для установки или чтения горизонтального размера клиентской области компонента.
Свойство ciipRect определяет область, доступную для рисования. То есть вне области, определяемой свойством clipRect, рисовать невозможно. Использование данного свойства сокращает затраты времени на перерисовку этой области.
Свойство color определяет цвет фона компонента. Значение этого свойства может быть или числом, определяющим интенсивность трех основных цветов (красного, зеленого и синего), или константой, определенной в Delphi (табл. 2.3).
Таблица 2.3. Константы, определяющие цвета
Константа |
Цвет |
||
ClBlack |
Черный |
||
CIMaroon |
Темно-бордовый |
||
ClGreen |
Зеленый |
||
ClOlive |
Оливковый |
||
CINavy |
Темно-синий |
||
Cl Purple |
Пурпурный |
||
CITeal |
Морской |
||
CIGray |
Серый |
||
CISilver |
Серебристый |
||
CIRed |
Красный |
||
CILime |
Лимонный |
||
ClBlue |
Синий |
||
ClYellow |
Желтый |
||
ClFuchsia |
Сиреневый |
||
СlAqua |
Голубой |
||
ClWhite |
Белый |
||
ClBackground |
Цвет фона рабочего стола Windows |
||
CIScrollBr |
Цвет полос прокрутки |
||
ClActiveCaption |
Цвет фона полосы заголовка активного окна |
||
CllnactiveCaption |
Цвет фона полосы заголовка неактивного окна |
||
CIMenu |
Цвет фона меню |
||
ClWindow |
Цвет фона окна |
||
ClWindowFrame |
Цвет рамки окна |
||
CIMenuText |
Цвет текста меню |
||
ClWindowText |
Цвет текста окна |
||
CICaptionText |
Цвет текста заголовка в активном окне |
||
ClActiveBorder |
Цвет бордюра активного окна |
||
ClInactiveBorder |
Цвет бордюра неактивного окна |
||
ClAppWorkSpace |
Цвет рабочей области приложения |
||
ClHighlight |
Цвет фона выделенного текста |
||
ClHighlightText |
Цвет выделенного текста |
||
ClBtnFace |
Цвет поверхности кнопки |
||
ClBtnShadow |
Цвет тени, отбрасываемой кнопкой |
||
CIGrayText |
Цвет текста недоступных элементов окна |
||
ClBtnText |
Цвет текста кнопки |
||
ClInactiveCaptionText |
Цвет заголовка в неактивном окне |
||
ClBtnHighlight |
Цвет выделенной кнопки |
||
C13DdkShadow |
Цвет темных теней трехмерных элементов окна |
||
ClBDlight |
Светлый цвет на краях трехмерных элементов окна |
||
ClInfoText |
Цвет текста советов |
||
ClInfoBk |
Цвет фона советов |
||
Данные константы цвета, начиная с clBackground, определяются той цветовой схемой Windows, которая установлена пользователем на данном конкретном компьютере. Эти цвета рекомендуется использовать при разработке приложений для передачи третьим лицам.
Свойство commonAvi предназначено для определения стандартного клипа Windows из файла-библиотеки Shell32.dll. То есть такие клипы, как копирование файлов, поиск файлов, удаление файлов в корзину и др.
Свойство componentcount определяет число компонентов, содержащихся в данном компоненте контейнерного типа.
Свойство component index определяет индекс (порядковый номер) компонента, содержащего в компоненте-контейнере.
Свойство components хранит в себе массив компонентов, владельцем которых является данный компонент. Параметр свойств index позволяет выбрать любой компонент из массива, благодаря свойству Componentindex. Индексы компонентов нумеруются начиная с нуля. Число компонентов, которые содержатся в массиве, можно определить с помощью свойства Componentcount.
Рассмотрим пример применения данных свойств. Предположим, что у нас на форме имеется несколько компонентов. Наша задача - сместить все компоненты, которые присутствуют на форме, кроме компонента Button1 вправо на 10 единиц. Для этого мы можем использовать следующий код:
for i := 0 to Componentcount - 1 do
if (Components[i].Name <> 'Button1') then
(Components[i] as TControl).Left:=(Components[i] as TControl).Left + 10;
Свойство controicount определяет число дочерних компонентов данного оконного элемента. Дочерними называются компоненты, которые расположены в клиентской области этого элемента и, кроме того, в свойстве Parent которых указан данный элемент. Свойство controicount предназначено только для чтения.
Свойство controls является массивом, содержащим все дочерние компоненты данного элемента. Параметр index определяет индекс соответствующего компонента. Индексы начинают нумероваться с нуля. Это свойство предназначено только для чтения.
Свойство Controlstate определяет различные условия, действующие на данный экземпляр компонента. Например, двойной щелчок мыши или необходимость выравнивания компонента.
Свойство Controlstyle определяет различные атрибуты компонента. Например, может ли компонент быть захвачен мышью, имеет ли компонент фиксированные размеры и др. Данное свойство описывает не экземпляры класса, а класс в целом.
Свойство CopyMode определяет способ копирования графического изображения на канву с помощью метода copyRect, или при рисовании объекта типа TBitmap. При помощи данного свойства можно достичь разных эффектов объединения изображений. В табл. 2.4 перечислены возможные значения свойства CopyMode.
Таблица 2.4. Возможные значения свойства CopyMode
Значение свойства |
Действие при копировании |
||
cmBlackness |
Заполняет область, в которую производится копирование, черным цветом. Собственное изображение и копируемое изображение удаляются |
||
cmDstlnvert |
Инвертирует изображение области копирования. Копируемое изображение может быть любым - оно не участвует в процессе инвертирования |
||
cmMergeCopy |
Объединяет изображение, находящееся в области копирования, и копируемое изображение при помощи булевой операции AND |
||
cmMergePaint |
Объединяет изображение, находящееся в области копирования, и инвертированное копируемое изображение при помощи булевой операции OR |
||
cmNotSrcCopy |
Помещает в область копирования инверсное копируемое изображение, причем изображение, находящееся в копируемой области, игнорируется |
||
crnNotSrcErase |
Объединяет изображение, находящееся в области копирования, и копируемое изображение при помощи булевой операции OR, после чего результат копирования инвертируется |
||
cmPatCopy |
Копирует шаблон источника в область копирования, причем собственное изображение игнорируется |
||
cmPatlnvert |
Объединяет изображение, находящееся в области копирования, и шаблон источника при помощи булевой операции XOR |
||
cmPatPaint |
Объединяет инверсное изображение источника и его шаблон при помощи булевой операции OR, затем результат объединяется с изображением, находящемся в области копирования, при помощи булевой операции OR |
||
cmSrcAnd |
Объединяет изображение, находящееся в области копирования, и изображение источника при помощи булевой операции AND |
||
cmSrcCopy |
Копирует изображение источника в область копирования. Собственное изображение, находящееся в области копирования, игнорируется. Данный режим применяется по умолчанию |
||
cmSrcErase |
Инвертирует изображение в области копирования и объединяет результат с изображением источника при помощи булевой операции AND |
||
cmSrcInvert |
Объединяет изображение источника с изображением в области копирования при помощи булевой операции XOR. Повторное копирование восстанавливает прежнее изображение в области копирования |
||
cmSrcPaint |
Объединяет изображение в области копирования и изображение источника при помощи булевой операции OR |
||
cmWhiteness |
Заполняет область копирования белым цветом, собственное изображение и копируемое изображение игнорируются |
||
Приведем пример использования способов копирования. Предположим, нам нужно в область с изображением вывести некоторое изображение, а затем убрать его, восстановив прежнее изображение. Для этого можно использовать код:
Imagel.Canvas.CopyMode := cmSrcInvert;
Imagel.Canvas.CopyRect (Rect (0,0,200,200), Image2.Canvas,
Rect (0,0,200,200)); Imagel.Canvas.CopyRect (Rect (0,0,200,200), Image2.Canvas,.
Rect '(0,0,200,200));
Свойство count предназначено для хранения количества элементов, содержащихся в компоненте класса TList. При добавлении новых элементов или при удалении (при помощи методов Add и Delete) значение данного свойства изменяется автоматически. При увеличении значения данного свойства вручную, в компонент класса TList будет добавлено соответствующее значение нулевых элементов. Удалить нулевые элементы можно при помощи вызова метода Pack. При уменьшении данного свойства count будут удалены последние элементы, содержащиеся в данном компоненте.
Свойство cti3D предназначено для установки внешнего вида компонента. Если данное свойство имеет значение true, то компонент будет выглядеть бъемным, если - false, то компонент будет плоским.
Свойство Cursor определяет вид указателя мыши, когда он находится над данным компонентом. Есть еще одно свойство Dragcursor, которое определяет вид указателя мыши, когда над компонентом происходит перетаскивание другого компонента. Delphi имеет встроенные виды указателей. Кроме встроенных, разработчик может помещать в приложение собственные виды указателя мыши. В табл. 2.5 находится список встроенных типов указателей мыши.
Таблица 2.5. Встроенные указатели мыши
Значение свойства Cursor |
Изображение указателя мыши |
||
crDefault |
Указатель, принятый по умолчанию. Обычно это crArrow |
||
crNone |
Без изображения указателя |
||
crArrow |
Стрелка |
||
crcross |
Крест |
||
crIBeam |
Указатель в виде курсора для ввода текста |
||
crSize |
Указатель изменения размера окна |
||
crSizeNESW |
Указатель изменения размера окна в правом верхнем углу или в левом нижнем |
||
crSizeNS |
Указатель изменения размера окна вверху или внизу (по вертикали) |
||
crSizeNWSE |
Указатель изменения размера окна в левом верхнем углу или в правом нижнем |
||
crSizeWE |
Указатель изменения размера окна слева или справа (по горизонтали) |
||
crUpArrow |
Стрелка вверх |
||
crHourGlass |
Песочные часы |
||
crDrag |
Перетаскивание компонента |
||
crNoDrop |
Указатель, показывающий невозможность переноса компонента в данную область |
||
crHSplit |
Горизонтальный разделитель |
||
crVSplit |
Вертикальный разделитель |
||
crMultiDrag |
Перетаскивание нескольких компонентов |
||
crSQLWait |
Ожидание выполнения SQL-запроса |
||
crNo |
Указатель, показывающий невозможность действия |
||
crAppStart |
Ожидание старта приложения (стрелка с песочными часами) |
||
crHelp |
Стрелка с вопросом |
||
crHandPoint |
Указатель в форме руки |
||
Свойство DesktopFont предназначено для определения, использует ли компонент для отображения текста шрифт Windows. Установка свойства DesktopFont в True определяет, что компонент должен применять для свойства Font изображение шрифта Windows. Этот шрифт задается свойством lconFont глобальной переменной Screen. Таким образом, всякий раз, когда будет изменяться используемый Windows шрифт, будет автоматически изменяться свойство Font для данного компонента.
Свойство DeviceType применяется для задания типа устройства мультимедиа, открываемого медиаплейером. По умолчанию значение данного свойства dtAutoSelect. Это означает, что тип устройства будет определяться по расширению файла, указанного в свойстве FileName.
Свойство Display определяет компонент окна, который будет использован мультимедийным устройством для вывода. Таким компонентом может быть форма или панель. По умолчанию значение данного свойства равно nil, это означает, что устройство создает собственное окно для вывода. Например, если мы хотим, чтобы изображение выводилось на панель Panel 1, мы можем использовать следующий код:
MediaPlayerl.Display := Panel1;
Свойство DispiayRect предназначено для задания прямоугольной области окна, определенного свойством Display, для вывода в нее изображения.
Данное cвойство игнорируется, если Display = nil. свойство DispiayRect должно задаваться только после того, как устройство мультимедиа открыто. При задании значения данного свойства обратите внимание на то, что первые два числа задают координаты левого верхнего угла изображения, а следующие два - ширину и высоту изображения, а не координаты правого нижнего угла. Например:
MediaPlayerl.DispiayRect := Rect(10,10,300,200);
Данная строка задает область вывода с координатами левого верхнего угла (10, 10) шириной изображения 300 и высотой 200 точек.
Свойство DragMode определяет поведение компонента в процессе его перетаскивания. Данное свойство может принимать одно из двух значений: automatic и dmManual. В первом случае, от разработчика не требуется обработка событий. Достаточно щелкнуть на компоненте и начать его перетаскивание. Во втором случае, компонент не может начать процесс перетаскивания, пока приложение не вызовет метод BeginDrag.
Свойство Drawingstyle применяется для задания стиля изображения. Данное свойство может принимать следующие значения:
- dsFocused - изображение на 25% смешивается с цветом, указанным в свойстве BlendColor. Данное значение влияет только на те изображения, которые содержат маску;
- deselected - то же, что и dsFocused, только смешивание происходит на 50%;
- dsNormal - изображение рисуется цветом, указанным в свойстве BkColor. Если BkCoior равно ciNone, то изображение рисуется прозрачным с использованием маски;
- dsTransparent - изображение рисуется с помощью маски, независимо от свойства BkCoior.
Свойство Enabled показывает, будет ли компонент доступен пользователю во время работы приложения. Недоступный компонент (Enabled = false) отображается серым цветом. Он игнорирует события клавиатуры, мыши и таймера. Данное свойство применяется для временного ограничения доступа пользователя к компонентам. Например, если мы хотим сделать временно недоступной кнопку, нужно в свойстве Enabled кнопки установить значение false:
Buttonl.Enabled := false;
Свойство Font предназначено для установки шрифта, а также всех его атрибутов (размера, стиля, цвета и т. д.).
Свойство Groupindex применяется для описания способа объединения меню.
Свойство Handle используется для обеспечения доступа к дескриптору окна при обращении к функциям Win32 API, которые требуют дескриптор окна. Свойство Handle применяется только для чтения.
Примечание
Обращение к свойству Handle приводит к тому, что приложение создает дескриптор окна, если он не был создан ранее. Поэтому не обращайтесь к данному свойству при создании компонента или чтении его из потока.
Свойство Height применяется для задания высоты компонента.
Свойство HelpContext определяет номер, используемый в контекстно-зависимой справке. То есть задается номер страницы справки, которая будет отображаться на экране, когда пользователь нажмет клавишу <F1>.
Свойство Hint применяется для задания текста всплывающей подсказки. Оно обычно состоит из двух частей, разделяемых символом вертикальной черты (|). Например:
Buttonl.Hint := "Открыть[Выбор и открытие файла рисунка"
В данном случае, при наведении указателя мыши на кнопку Buttonl будет выдана всплывающая подсказка "Открыть", вторая часть подсказки будет выведена в специальную область, отведенную для таких подсказок, например, панель состояния. Разработчик может пользоваться только первой частью подсказки, без использования символа (|). Кроме того, для отображения всплывающих подсказок нужно дополнительно установить свойство ShowHint В true.
Свойство imageindex применяется для указания индекса изображения, появляющегося левее надписи данного раздела меню. Индексы начинают нумерацию с нуля.
Свойство lsControl определяет способ сохранения формы. Если оно равно true, то сохраняются только те свойства, которые характерны для элементов управления. Если же оно равно false, то все свойства записываются вместе с формой.
Свойство items применяется для доступа к массиву указателей, хранящихся в объекте типа TList. Свойство items имеет тип Pointer. Индексы начинают нумерацию с нуля.
Свойство Left используется для задания координаты левого края компонента. Для всех компонентов за начало координат берется левый верхний угол клиентской области родительского компонента. Для форм началом координат является левый верхний угол экрана.
Свойство List предназначено для доступа к массиву указателей объекта типа TList. Данное свойство имеет доступ только для чтения.
Свойство LockCount указывает, сколько раз была заблокирована область вывода изображения (канва) компонента для предотвращения эффектов наложения от действий различных потоков многопоточного приложения. Данное свойство доступно только для чтения.
Свойство Mode предназначено для задания режима переноса данных из одной таблицы в другую. В табл. 2.6 приведены возможные значения этого свойства.
Таблица 2.6. Возможные значения свойства Mode
Значение свойства |
Режим переноса данных |
||
batAppend |
Записи из источника данных переносятся в приемник, не изменяя уже существующих в приемнике данных. Таблица-приемник должна существовать до начала переноса данных |
||
batUpdate |
Записи из источника данных переносятся в приемник, изменяя уже существующие значения в приемнике. Новые записи в таблицу-приемник не добавляются. Таблица-приемник должна существовать до начала переноса данных |
||
batAppendUpdate |
Записи из источника данных переносятся в приемник, заменяя уже существующие и добавляя новые записи. Таблица-приемник должна быть создана до начала переноса данных и индексирована |
||
batDelete |
Записи в таблице-приемнике, которым есть соответствие в таблице-источнике, удаляются из приемника. Таблица-приемник должна быть создана до начала переноса данных и должна быть индексирована |
||
batCopy |
Создается копия таблицы-источника. Если до копирования таблица-приемник уже существовала, ее содержимое полностью изменяется на содержимое источника |
||
Свойство Name определяет имя компонента, по которому на него ссылаются другие компоненты, а также которое в дальнейшем используется разработчиком. Имя задается в процессе разработки программы и не должно изменяться во время работы программы. Delphi по умолчанию самостоятельно дает имена новым компонентам, например Button1, Button2, Labell и т. д. Рекомендуется изменять эти имена на более осмысленные.
Свойство Notify указывает, должно ли генерироваться событие onNotify после завершения вызова некоторых методов медиаплейера (open, close, Next и др.).
Свойство Parent определяет родительский компонент (родительский компонент - это не родительский объект!) контейнерного типа, в пределах которого располагается данный компонент.
Примечание
Важно различать два похожих свойства. Свойство Parent определяет родительский компонент, т. е. тот компонент, на котором располагается данный компонент. Свойство Owner определяет владельца компонента. Владелец - это компонент, который передается в качестве параметра в конструктор компонента и который владеет им. Например, форма является владельцем всех расположенных на ней компонентов (и, одновременно, родителем).
Свойство Parentctiso предназначено для определения, будет ли компонент наследовать от своего родительского компонента значение свойства ctiso.
Свойство ParentFont предназначено для определения, будет ли для данного компонента использоваться шрифт, применяемый в родительском компоненте контейнерного типа. Например, если на форме находится кнопка, то при установке у этой кнопки свойства parentFont в true приведет к тому, что надпись на кнопке будет выполнена тем шрифтом, который указан в свойстве Font формы.
Свойство ParentshowHint предназначено для включения и выключения родительского свойства showHint. Данное свойство используется для одновременного разрешения или запрещения показа всплывающих подсказок в пределах некоторой формы или компонента контейнерного типа.
Свойство Реп определяет атрибуты пера, которое используется для рисования линий. Данное свойство имеет тип треп. Свойство Реп определяет такие атрибуты, как ширину, цвет, стиль линий и режим рисования пером.
Свойство PenPos предназначено для определения положения пера на области для рисования. Значение этого свойства можно изменять вызовом метода MoveTo и другими методами. Можно непосредственно установить требуемое значение данного свойства, это будет равносильно вызову метода MoveTo.
Свойство Pitch применяется для установки ширины символов шрифта. Применяемые в Windows шрифты могут быть двух типов:
- шрифты с фиксированной шириной символа, т. е. каждый символ имеет определенную ширину, равную ширине других символов;
- шрифты с различной шириной символов. Рассмотрим возможные значения свойства Pitch:
- fpDefauit - ширина шрифта устанавливается равной значению, принимаемому по умолчанию, т. е. такой, какая описана для данного шрифта;
- fpFixed - одинаковая ширина для всех символов; - fpvariable - различная ширина символов.
Свойство Pixels предназначено для получения значения цвета точки с координатами х и Y в пределах текущей области компонента, определенной свойством clipRect. Попытка получить значение цвета точки вне области, заданной свойством ciipRect, возвращает значение -1.
Свойство shortcut предназначено для задания комбинации горячих клавиш, с помощью которых пользователь может выбрать нужный раздел меню.
Свойство showHint применяется для включения или выключения показа всплывающих подсказок при задержке указателя мыши над компонентом. Текст подсказки задается в свойстве Hint.
Свойство showing предназначено для определения, видит ли пользователь данный компонент в настоящий момент времени. При этом не учитывается, что этот компонент могут загораживать другие компоненты. Данное свойство предназначено только для чтения. Свойство showing связано со свойством visible. Если свойство visible компонента и всех его родителей (компонентов, содержащих его) равно true, то и showing равно true. Если же свойство visible компонента или какого-то из его родителей равно false, то Showing равно false.
Свойство size определяет размер используемого шрифта.
Свойство Taborder применяется для задания последовательности перехода от одного компонента формы к другому при помощи клавиши <Таb>. Нумерация осуществляется начиная с нуля. Если задать свойству Taborder компонента значение -1, то этот компонент не сможет получить фокус при помощи клавиши <Таb>. Предположим, что у нас на форме расположены три кнопки: Button1, Button2 и Button3. Для того чтобы фокус между этими кнопками передавался следующим образом: сначала активна кнопка Button2, потом Button1 и затем Button3, нужно установить свойство Taborder для кнопки Button1 равным 1, для Button2 равным 0, а для Button3 равным 2.
Свойство Tabstop применяется для указания возможности передачи фокуса на, компонент при помощи клавиши <Таb>. Если значение этого свойства равно true, то при помощи клавиши <Таb> можно передать фокус данному компоненту, в зависимости от его свойства Taborder. Если значение свойства Tabstop равно false, то независимо от свойства Taborder фокус будет невозможно передать при помощи клавиши <Таb>.
Свойство Tag применяется программистом по своему усмотрению. Тип данного свойства Longint. Разработчик может использовать свойство Tag в своих целях, помещая в него нужную информацию.
Свойство Text предназначено для задания или чтения строки текста, связанной с данным компонентом. Применяется в компонентах типа TEdit и в компонентах-списках.
Свойство TextFlags применяется для задания способа вывода текста в область вывода при помощи методов TextOut и TextRect. При задании способа вывода можно воспользоваться следующими константами:
- ETO_CLIPPED - выводится текст, размещающийся в заданной прямоугольной области;
- ETO_OPAQUE - выводится текст с непрозрачным цветом фона;
- ETO_RTLREADING - текст выводится справа налево. Доступно только для версий Windows, предназначенных для восточных стран;
- ETO_GLYPH_INDEX - текст передается непосредственно в GDI Windows. Применяется только для шрифтов TrueType.
Свойство тор предназначено для задания или чтения значения, определяющего координату верхнего края компонента.
Свойство Transparentcoior определяет прозрачный цвет при рисовании.
Свойство visible применяется для определения, будет ли виден компонент на форме во время выполнения программы. Если свойство имеет значение true, то компонент будет виден, иначе - невидим.
Свойство width используется для установки горизонтального размера компонента, а также для чтения текущего значения ширины компонента.