Общие свойства компонентов
Свойство Align
Задает способ выравнивания компонента внутри формы. Имеет одно из следующих значений:
Значение
| Описание
| aINone
| Выравнивание не используется. Компонент располагается на том месте, куда был помещен во время создания программы. Принимается по умолчанию
| alTop
| Компонент перемещается в верхнюю часть формы, и его ширина становится равной ширине формы. Высота компонента не изменяется
| alBottom
| Компонент перемещается в нижнюю часть формы, и его ширина становится равной ширине формы. Высота компонента не изменяется
| alLeft
| Компонент перемещается в левую часть формы, и его высота становится равной высоте формы. Ширина компонента не изменяется
| alRight
| Компонент перемещается в правую часть формы, и его высота становится равной высоте формы. Ширина компонента не изменяется
| alClient
| Компонент занимает всю рабочую область формы
|
Свойство Color
Задает цвет фона формы или цвет компонента или графического объекта. Может иметь одно из следующих значений:
Значение
| Цвет
| clBlack
| Черный (Black)
| cIMaroon
| Темно-красный (Maroon)
| cIGreen
| Зеленый (Green)
| clOlive
| Оливковый (Olive green)
| cINavy
| Темно-синий (Navy blue)
| cIPurple
| Фиолетовый (Purple)
| cITeal
| Сине-зеленый (Teal)
| cIGray
| Серый (Gray)
| cISilver
| Серебряный (Silver)
| clRed
| Красный (Red)
| clLime
| Ярко-зеленый (Lime green)
| clBlue
| Голубой (Blue)
| clFuchsia
| Сиреневый (Fuchsia)
| clAqua
| Ярко-голубой (Aqua)
| clWhite
| Белый (White)
|
Цвета, приведенные в следующей таблице, являются системными цветами Windows и зависят от используемой цветовой схемы.
Значение
| Цвет
| clBackGround
| Текущий цвет фона окна
| clActiveCaption
| Текущий цвет заголовка активного окна
| clInactiveCaption
| Текущий цвет заголовка неактивного окна
| cIMenu
| Текущий цвет фона меню
| clWindow
| Текущий цвет фона Windows
| clWindowFrame
| Текущий цвет рамки окна
| clMenuText
| Текущий цвет текста элемента меню
| clWindowText
| Текущий цвет текста внутри окна
| clCaptionText
| Текущий цвет заголовка активного окна
| clActiveBorder
| Текущий цвет рамки активного окна
| clInactiveBorder
| Текущий цвет рамки неактивного окна
| clAppWorkSpace
| Текущий цвет рабочей области окна
| clHighLight
| Текущий цвет фона выделенного текста
| clHightLightText
| Текущий цвет выделенного текста
| clBtnFace
| Текущий цвет кнопки
| clBtnShadow
| Текущий цвет фона кнопки
| clGrayText
| Текущий цвет недоступного элемента меню
| clBtnText
| Текущий цвет текста кнопки
|
Помимо перечисленных в таблице цветов значение свойства Color может задаваться шестнадцатеричными значениями. Свойство Ctl3D
Позволяет задать вид компонента. Если значение этого свойства равно False, компонент имеет двумерный вид, если True — трехмерный (значение по умолчанию). Свойство Cursor
Позволяет определить вид курсора, который он будет иметь, находясь в активной области компонента. В Delphi предопределено большое количество стандартных курсоров. Кроме того, пользователь может создавать свои собственные курсоры или использовать созданные другими. Свойство DrogCursor
Позволяет определить вид курсора, который будет отображаться, когда в компонент “перетаскивается” другой компонент. Значения этого свойства те же, что и у свойства Cursor.
Свойство DrogMode
Позволяет определить режим поддержки протокола drag-and-drop. Возможны следующие значения:
Значение
| Описание
| dmAutomatic
| Компонент можно “перетаскивать”, “зацепив” мышью
| dmManual
| Компонент не может быть “перетащен” без вызова метода BeginDrag
|
Свойство Enabled
Если это свойство имеет значение True, компонент реагирует на сообщения от мыши, клавиатуры и таймера. В противном случае (значение False) эти сообщения игнорируются. Свойство Font
Многие визуальные компоненты используют шрифт по умолчанию. При создании компонента изначальное значение свойства Font (класс TFont) имеет следующие параметры:
Свойство
| Значение
| Color
| ClWindowText
| Height
| MulDiv(10, GetDeviceCaps(DC, LOGPIXELSY), 72)
| Name
| System
| Pitch
| FpDefault
| Size
| 10
| Style
| []
|
Свойство Height
Это свойство задает вертикальный размер компонента или формы. Свойство HelpContext
Задает номер контекста справочной системы. Этот номер должен быть уникальным для каждого компонента. Если компонент активен (находится в фокусе), нажатие клавиши FI приводит к отображению экрана справочной системы (если такой существует для данного компонента). Свойство Hint
Задает текст, который будет отображаться при обработке события OnHint, происходящего, если курсор находится в области компонента. Свойство Left
Задает горизонтальную координату левого угла компонента относительно формы в пикселях. Для форм это значение указывается относительно экрана. Свойство ParentColor
Это свойство позволяет указать, каким цветом будет отображаться компонент. Если значение этого свойства равно True, компонент использует цвет (значение свойства Color) родительского компонента. Если же значение свойства ParentColor равно False, компонент использует значение собственного свойства Color. Свойство ParentCtl3D
Это свойство позволяет указать, каким образом компонент будет определять, является он трехмерным, или нет. Если значение этого свойства равно True, то вид компонента задается значением свойства Ctl3D его владельца, если же значение этого свойства равно False — то значением его собственного свойства Ctl3D. Свойство ParentFont
Это свойство позволяет указать, каким образом компонент будет определять используемый им шрифт. Если значение этого свойства равно True, \ используется шрифт, заданный у владельца компонента, если же это значение равно False, то шрифт задается значением его собственного свойства Font. Свойство PopupMenu
Это свойство задает название локального меню, которое будет отображаться при нажатии правой кнопки мыши. Локальное меню отображается только в случае, когда свойство AutoPopup имеет значение True или когда вызывается метод Popup. Свойство TabOrder
Задает порядок получения компонентами фокуса при нажатии клавиши Tab. По умолчанию этот порядок определяется размещением компонентов в форме: первый компонент имеет значение этого свойства, равное 0, второй — 1 и т.д. Для изменения этого порядка необходимо изменить значение свойства TabOrder определенного компонента. TabOrder может использоваться только совместно со свойством TabStop. Свойство TabStop
Это свойство позволяет указать, может компонент получать фокус или нет. Компонент получает фокус, если значение его свойства TabStop равно True. Свойство Tag
С помощью этого свойства можно “привязать” к любому компоненту значение типа Longint. Свойство Тор
Это свойство задает вертикальную координату левого верхнего угла интерфейсного элемента относительно формы в пикселях. Для формы это значение указывается относительно экрана. Свойство Visible
Это свойство позволяет определить, видим ли компонент на экране. Значением этого свойства управляют методы Show и Hide. Свойство Width
Это свойство задает горизонтальный размер интерфейсного элемента или формы в пикселях. 2. Компоненты страницы STANDARD 1.TMainMenu Компонент TMainMenu служит для создания главного меню формы установки компонента на форму необходимо создать его опции. Для этого следует путем двойного нажатия на левую клавишу "мыши" вызвать конструктор меню. Создание опций меню - достаточно простой процесс. Надо выбрать, перейти в окно инспектора объектов, в строке Caption набрать необходимое и нажать клавишу Enter. Для создания новых опций необходимо выбирать справа, для создания подопций - снизу. Для определения символа быстрого доступа к опции перед ним ставится символ "&". Для вставки разделить черты очередной элемент называется "-". Для создания разветвленных меню, т.е. таких, у которых подопции вызывают новые списки подопций, нажмите Ctrl-Вправо, где Вправо - клавиша смещения курсора вправо.
Каждый элемент меню является объектом класса TMenuItem и обладает следующими свойствами:
Property Break: TMenuBreak;
| Позволяет создать многоколончатый список подменю
| Property Checked: Boolean;
| Если True, рядом с опцией появляется галочка
| Property Command: Word;
| Используется при разработке приложений, обращающихся непосредственно к API-функциям Windows
| Property Count: Integer;
| Содержит количество опций в подчиненном меню, связанном с данным элементом (только для чтения)
| Property Default: Boolean;
| Определяет, является ли данная опция подменю умалчиваемой (умалчиваемая опция выделяется цветом и выбирается двойным щелчком мыши на родительской опции)
| Property GroupIndex: Byte;
| Определяет групповой индекс для зависимых опций
| Property Items[Index: integer]: TMenuItem;
| Позволяет обратиться к любой опции подчиненного меню по ее индексу
| Property MenuIndex: Integer;
| Определяет индекс опции в списке Items родительской опции
| Property RadioItem: Boolean;
| Определяет, зависит ли данная опция от выбора других опций в той же группе GroupIndex. Только одна опция группы может иметь True в свойстве Checked. Рядом с такой опцией вместо галочки изображается круг
| Property Shortcut: TShortCut
| Задает клавиши быстрого выбора данной опции
|
TPopupMenu
Данный компонент является локальным меню, которое становит доступным, когда пользователь нажимает правую кнопку мыши в рабочей области формы или компонента. Обычно локальное меню используется для динамического изменения свойств того или иного интерфейсного элемента.
Редактируется локальное меню так же, как и главное, с помощью конструктора меню. Чтобы связать нажатие правой кнопки мыши с раскрытием вспомогательного меню, в свойство PopupMenu необходимо поместить имя компонента меню.
Свойство Alignment задает местонахождение локального меню. 3.TLabel Компоненты класса TLabel (метки) предназначены для размещения на форме различного рода текстовых надписей.
Property AutoSize: Boolean;
| Указывает, будет ли метка изменять свои размеры в зависимости от помещенного в ее свойство Caption текста (True - будет)
| Property FocusControl: TWinControl;
| Содержит имя оконного компонента, который связан с меткой (выбор компонента Label приводит к перемещению фокуса на связанный с ним компонент)
| TtextLayout = ( tlTop, tlCenter, tlBottom);
Property Layout: TTextLayout;
| Определяет выравнивание текста по вертикали относительно границ метки: tlTop – текст располагается вверху; tlCenter – текст центрируется по вертикали; tlBottom – текст располагается внизу
| Property ShowAccelChar: Boolean;
| Если содержит True, символ & в тексте метки предшествует символу-акселератору
| Property Transparent: Boolean;
| Определяет прозрачность фона метки. Если False, фон закрашивается собственным цветом Color, в противном случае используется фон родительского компонента
| Property WordWrap: Boolean;
| Разрешает/запрещает разрыв строки на границе слова. Для вывода многострочных надписей задайте AutoSize=False, WordWrap=True и установите подходящие размеры метки
|
4.TEdit Компонент класса TEdit представляет собой однострочный редактор текста. С его помощью можно вводить и/или отображать достаточно длинные текстовые строки. Следует помнить, что этот компонент не распознает символы конца строки (#13#10).
Property AutoSelect: Boolean;
| Указывает, будет ли выделяться весь текст в момент получения компонентом фокуса ввода
| Property AutoSize: Boolean;
| Если True и BorderStyle = bsSingle, высота компонента автоматически меняется при изменении свойства Font.Size
| TBorderStyle = bsNone..bsSingle; Property BorderStyle: TBorderStyle
| Определяет стиль обрамления компонента: bsNone-нет обрамления; bsSingle-компонент обрамляется одной линией
| TEditCharCase = (ecNormal, ecUpperCase, ecLowerCase); Property CharCase: TEditCharCase;
| Определяет автоматическое преобразование высоты букв: ecNormal – нет преобразования; ecUpperCase –все буквы заглавные; ecLowerCase –все буквы строчные. Правильно работает с кириллицей
| Property HideSelection: Boolean;
| Если False, выделение текста сохраняется при потере фокуса ввода
| Property MaxLength: Integer;
| Определяет максимальную длину текстовой строки. Если имеет значение 0, длина строки не ограничена
| Property Modified: Boolean;
| Содержит True, если текст был изменен
| Property OnChange: TNotifyEvent;
| Определяет обработчик события OnChange, которое возникает после любого изменения текста
| Property OEMConvert: Boolean;
| Содержит True, если необходимо перекодировать текст из кодировки MS-DOS в кодировку Windows и обратно
| Property PasswordChar: Char;
| Если символ PasswordChar определен, он заменяет собой любой символ текста при отображении в окне. Используется для ввода паролей
| Property ReadOnly: Boolean;
| Если содержит True, текст не может изменяться
| Property SelLength: Integer;
| Содержит длину выделенной части текста
| Property SelStart: Integer;
| Содержит номер первого символа выделенной части текста
| Property SelText: String:
| Содержит выделенный текст
|
Методы компонента:
Procedure Clear:
| Удаляет весь текст
| procedure ClearSelection;
| Удаляет выделенный текст
| procedure CopyToClipboard;
| Копирует выделенный текст в Clipboard
| procedure CutToClipboard;
| Копирует выделенный текст в Clipboard, после чего удаляет выделенный текст из компонента
| function GetSelTextBuf(Buffer: PChar; ButSize: Integer): Integer;
| Копирует не более ButSize символов выделенного текста в буфер Buffer
| procedure PasteFrornClipboard;
| Заменяет выделенный текст содержимым Clipboard, а если нет выделенного текста, копирует содержимое Clipboard в позицию текстового курсора
| procedure SelectAll;
| Выделяет весь текст
| Procedure SetSelTextBuf(Buffer: PChar);
| Заменяет выделенный текст содержимым Buffer, а если нет выделенного текста, копирует содержимое Buffer в позицию текстового курсора
|
5. ТMето Компоненты класса ТМеmо предназначены для ввода, редактирования и (или) отображения достаточно длинного текста, содержащего большое количество строк.
Большинство свойств этого компонента аналогичны свойствам класса TEdit. Свойство Wordwrap аналогично свойству TLabel.WordWrap.
Property Lines: TStrings;
| Содержит редактируемый текст. Используется для построчного доступа. Методы Add, Delete, Insert используются для добавления, удаления и вставки строк
| TScrollStyle = (ssNone, ssHorizontal, ssVertical, ssBoth); Property ScrollBars: TScrollStyle;
| Определяет наличие в окне редактора полос прокрутки: ssNone – нет полос; ssHorizontal - есть горизонтальная полоса; ssVertical- есть вертикальная полоса; ssBoth - есть обе полосы
| Property WantRetums: Boolean;
| Если содержит True, нажатие Enter вызывает переход на новую строку, в противном случае-обрабатывается системой. Для перехода на новую строку в этом случае следует нажать Ctrl+Enter
| Property WantTabs: Boolean;
| Если содержит True, нажатие Tab вызывает ввод е текст символа табуляции, в противном случае –обрабатывается системой. Для ввода символа табуляции в этом случае следует нажать Ctrl-Tab
|
6. TButton Компонент TButton представляет собой стандартную кнопку и широко используется для управления программами. Кнопка может содержать текст, описывающий выполняемое ей действие.
Property Cancel: Boolean;
| Если имеет значение True, событие OnClick кнопки возникает при нажатии клавиши Esc
| Property Default: Boolean;
| Если имеет значение True, событие OnClick кнопки возникает при нажатии клавиши Enter
| Property Enabled: Boolean:
| Если имеет значение False, то кнопка недоступна для нажатия
| TModalResult =
Low(lnteger) .. High (Integer);
Property TModalResult;
| Определяет результат, с которым было закрыто модальное окно
|
В терминологии Windows модальными окнами называются такие специальные окна, которые, раз появившись на экране, блокируют работу пользователя с другими окнами вплоть до своего закрытия. Если у кнопки определено свойство ModalResult, нажатие на нее приводит к закрытию модального окна и возвращает в программу значение ModalResult как результат диалога с пользователем. В Delphi определены следующие стандартные значения ModalResult:
mrNone
| Модальное окно не закрывается
| mrOk
| Была нажата кнопка Ok
| mrCancel
| Была нажата кнопка Cancel
| mrAbort
| Была нажата кнопка Abort
| mrRetry
| Была нажата кнопка Retry
| mrIgnore
| Была нажата кнопка Ignore
| mrYes
| Была нажата кнопка Yes
| mrNo
| Была нажата кнопка No
| MrAll
| Была нажата кнопка Аll
|
7. TCheckBox Кнопка с независимой фиксацией позволяет выбрать или отменить определенную функцию. Свойство State позволяет установить значение кнопки. Кнопка может находиться во включенном, выключенном и неактивном состоянии.
TLeftRight = (taLeftJustify, taRightJustify);
Property Alignment: TLeftRight;
| Определяет положение текста: taLeftJustify -с левой стороны компонента; taRightJustify - с правой стороны
| Property AllowGrayed: Boolean;
| Разрешает (запрещает) использование неактивного состояния cbGrayed
| Property Checked: Boolean;
| Содержит выбор пользователя типа Да/Нет. Состояния cbUnchecked и cbGrayed отражаются как False
| TcheckBoxState = (cbUnchecked, cbChecked, cbGrayed);
Property State: CheckBoxState;
| Содержит состояние компонента: cbUnchecked - нет; cbChecked - да; cbGrayed –неактивен
|
8.RadioButton Кнопки с зависимой фиксацией предназначены для выбора одной опции из нескольких взаимоисключающих, поэтому таких кнопок должно быть как минимум две. Для группировки кнопок с зависимой фиксацией внутри формы их необходимо разместить внутри компонента Panel, GroupBox или ScrollBox. Состояние кнопки содержится в свойстве Checked. 9. TListBox Интерфейсный элемент этого типа содержит список элементов, которые могут быть выбраны при помощи клавиатуры или мыши. В компоненте предусмотрена возможность программной прорисовки элементов, поэтому список может содержать не только строки, но и произвольные изображения.
Property Canvas: TCanvas;
| Канва для программной прорисовки элементов
| Property Columns: Longint;
| Определяет количество колонок элементов в списке
| Property ExtendedSelect: Boolean;
| Если ExtendedSelect=True и MultiSelect=True, выбор элемента без одновременного нажатия Crtl или Alt отменяет предыдущий выбор
| Property IntegralHeight: Boolean;
| Если IntegralHeight=True и Style<>lbOwnerDraw-Variable, в списке показывается целое число элементов
| Property ItemIndex: Integer;
| Содержит индекс сфокусированного элемента. Если MultiSelect=False, совпадает с индексом выделенного элемента
| Property ItemHeight: Integer;
| Определяет высоту элемента в пикселях для Style=lbOwnerDrawFixed
| Property Items: TStrings;
| Содержит набор строк, показываемых в компоненте
| Property Multiselect: Boolean;
| Разрешает/отменяет выбор нескольких элементов
| Property SelCount: Integer:
| Содержит количество выбранных элементов
| Property Selected[X: Integer]: Boolean;
| Содержит признак выбора для элемента с индексом Х (первый элемент имеет индекс 0)
| Property Sorted: Boolean;
| Разрешает/отменяет сортировку строк в алфавитном порядке
| TlistBoxStyle = (IbStandard, lbOwnerDrawFixed, lbOwnerDrawVariable); Property Style: TUstBoxStyle;
| Определяет способ прорисовки элементов: IbStandard элементы рисует Windows, lbOwnerDrawFixed – рисует программа, все элементы имеют одинаковую высоту, определяемую свойством ItemHeight, lbOwnerDrawVariable -рисует программа, элементы имеют разную высоту
| Property TopIndex: Integer;
| Индекс первого видимого в окне элемента
|
10.TСomboBox Комбинированный список представляет собой комбинацию списка TListBox и редактора TEdit и поэтому большинство его свойств и методов заимствованы у этих компонентов.
Существуют пять модификаций компонента, определяемые его свойством Style: csSimple, csDropDown, csDropDownList, csOwnerDrawFixed и csOwnerDrawVariable. В первом случае список всегда раскрыт, в остальных раскрывается после нажатия кнопки справа от редактора. В модификации csDropDownList редактор работает в режиме отображения выбора и его нельзя использовать для ввода новой строки. Модификации csOwnerDrawFixed и csOwnerDrawVariable используются для программной прорисовки модификации csDropDown.
Свойство DropDownCount определяет количество элементов списка, появление которых еще не приводит к необходимости прокрутки списка. Свойство DroppedDown определяет, раскрыт ли список в данный момент. 11. TScrollBar Компонент TScrollBar является полосой прокрутки и обычно используется для визуального управления значением какой-либо величины.
SrollBarKind = (sbHorizontal, sbVertical); Property Kind: TScrollBarKind;
| Определяет ориентацию компонента: sbHorizontal -бегунок перемещается по горизонтали; sbVertical -бегунок перемещается по вертикали
| Property LargeChange: TScrollBarInc:
| “Большой” сдвиг бегунка (при щелчке мышью рядом с концевой кнопкой)
| Property Max: Integer;
| Максимальное значение диапазона изменения числовой величины
| Property Min: Integer;
| Минимальное значение диапазона изменения числовой величины
| Property Position: Integer;
| Текущее значение числовой величины
| Property SmallChange: TScrollBarInc;
| “Малый” сдвиг бегунка (при щелчке мышью по концевой кнопке)
|
12. TGroupBox Этот компонент служит контейнером для размещения дочерних компонентов и представляет собой прямоугольное окно с рамкой и текстом в разрыве рамки. Обычно с его помощью выделяется группа управляющих элементов, объединенных по функциональному назначению. После того как компоненты помещены в группу, она становится их родительским классом. 13. TRadioGroup Компонент класса TRadioGroup представляет собой специальный контейнер, предназначенный для размещения зависимых переключателей класса TRadioButton. Каждый размещаемый в нем переключатель помещается специальный список Items и доступен по индексу, что упрощает обслуживание группы.
Property Columns: Integer;
| Определяет количество столбцов-переключателей
| Property ItemIndex: Integer;
| Содержит индекс выбранного переключателя
| Property Items: TStrings;
| Содержит список строк с заголовками элементов. Добавление (удаление) элементов достигается добавлением (удалением) строк списка Items
|
14. TPanel Панель используется в качестве контейнера для расположения других интерфейсных элементов.
Property BevelInner: TPanelBevel;
| Определяет стиль внутренней кромки
| Property BevelOuter: TPanelBevel;
| Определяет стиль внешней кромки
| TBevelWidth = 1..Maxlnt;
Property BevelWidth: TBevelWidth;
| Задает ширину кромок в пикселях
| TBorderStyle = bsNone..bsSingle; Property BorderStyle: TBorderStyle;
| Определяет стиль рамки: bsNone - нет рамки; bsSingle – компонент по периметру обводится линией толщиной в 1 пиксель
| TBorderWidth: 0..Maxint;
Property BorderWidth: TBorderWidth:
| Определяет расстояние в пикселях от внешней кромки до внутренней
| Property FullRepaint: Boolean;
| Разрешает (запрещает) перерисовку панели и всех ее дочерних элементов при изменении ее размеров
| |