TBitBtn
Пиктографическая кнопка TBitBtn представляет собой разновидность стандартной кнопки TButton, которая помимо текста может содержа графическое изображение. Растровое изображение определяется с помощь свойства Glyph. В комплект поставки DELPHI (поддиректория Images/Buttons входит около 160 различных вариантов растровых изображений для кнопок. Кроме того, пользователь может самостоятельно создать растровое изображения помощью встроенного в DELPHI графического редактора.
Свойство Kind позволяет выбрать одну из 11 стандартных разновидность кнопки (рис.ПЗ.1.)
Рис. П2.1
Нажатие любой из кнопок, кроме bkCustom и bkHelp, закрывает модальное окно и возвращает в программу результат mrXXX: bkOk - mrOk, bkCancel - mrCancel и т.д. Кнопка bkClose для модального окна возвращает mrCancel, a дляглавного окна программы – закрывает его и завершает работу программы. Кнопка bkHelp автоматически вызывает раздел справочной службы, связанный с HeIpContext формы, на которую она помещена.
Property Glyph: TBitmap: | Определяет связанные с кнопкой растровые изображения (до 4) |
TBitBtnKind = (bkCustom, bkOK, bkCancel, bkHelp, bkYes,bkNo, bkClose, bkAbort, bkRetry, bkIgnore,bkAII); Property Kind: TbitBtnKind; | Определяет разновидность кнопки |
TbuttonLayout = (blGlyphLeft, bIGlyphRight, bIGlyphTop, bIGlyphBottom); PropertyLayout: TbuttonLayout; | Определяет край кнопки, к которому прижимается пиктограмма |
Property Margin: Integer: | Определяет расстояние в пикселях от края кнопки до пиктограммы |
TnumGlyphs: 1..4; Property NumGlyphs: TnumGlyphs; | Определяет количество растровых изображений. Таких состояний может быть четыре: нормальное, запрещенное, нажатое, и утопленное |
Property Spacing: Integer; | Определяет расстояние в пикселях от пиктограммы до надписи на кнопке |
TbuttonStyle = (bsAlutoDetect, bsWin31, bsNew); Property Style: TbuttonStyle.; | Определяет стиль оформления кнопки, зависящий от операционной системы |
П2.3.2. TSpeedButton
Еще один вариант кнопки, который отличается от TBitBtn тремя обстоятельствами: во-первых, не предусмотрен вывод надписи, во-вторых, имеется возможность фиксации в утопленном состоянии и, в-третьих, она не может закрыть модальное окно.
П2.3.3. TMaskEdit
Специализированный редактор TMaskEdit предназначен для ввода текста, соответствующего некоторому шаблону, задаваемому свойством EditMask: String. Если это свойство не задано, TMaskEdit работает как обычный редактор TEdit.
Шаблон состоит из трех частей, отделенных друг от друга символами “;”. Первая часть задает маску ввода, вторая - это символ “О” или “1”, определяющий, записывается ли в Text результат наложения маски или исходный текст (“О” -исходный текст). В третьей части указывается символ, который в окне редактора будет стоять в полях, предназначенных для ввода символов. Описатели полей ввода представлены в следующей таблице:
Символ | Поле |
L | Должно содержать букву |
Может содержать букву | |
А | Должно содержать букву или цифру |
а | Может содержать букву или цифру |
С | Должно содержать любой символ |
с | Может содержать любой символ |
Должно содержать цифру | |
Может содержать цифру | |
# | Может содержать цифру, “+”, “–” |
Специальные символы:
Символ | Значение |
\ | Следующий символ - литерал. Позволяет вставить в маску литералы из символов описателей полей ввода и специальных символов |
На это место вставляется символ-разделитель Windows для часов, минут, секунд | |
/ | На это место вставляется символ-разделитель Windnws для полей даты. |
/ | Разделитель частей шаблона |
! | Подавляет все ведущие пробелы |
> | Все следующие за ним поля ввода преобразуют буквы к заглавным |
< | Все следующие за ним поля ввода преобразуют буквы к строчным |
о | Отменяет преобразование букв |
П2.3.4. TDrawGrid
Компонент TDrawGrid используется для отображения информации в виде таблицы. Таблица делится на две части - фиксированную и рабочую. Фиксированная часть служит для показа заголовков столбцов/рядов и для ручного управления их размерами. Рабочая часть содержит произвольное количество столбцов и рядов, содержащих как текстовую так, и графическую информацию, и может изменяться программно.
Property BorderStyle: TborderStyle; | Определяет наличие или отсутствие внешней рамки таблицы |
Property Col: Longint; | Содержит номер столбца сфокусированной ячейки |
PropertyCotCount: Longint; | Содержит количество столбцов таблицы |
PropertyColWidths[lndex: Longint]: Integer; | Содержит ширину столбца с индексом Index |
Property DefaultColWidth: Integer; | Содержит умалчиваемое значение ширины столбца |
PropertyDefaultDrawing: boolean; | Разрешает/запрещает автоматическую прорисовку служебных элементов таблицы-фиксированной зоны, фона и прямоугольника сфокусированной ячейки и т.п. |
Property DefaultRowHeight: Integer; | Содержит умалчиваемую высоту рядов |
Property EditorMode: Boolean; | Разрешает/запрещает редактирование ячеек. Игнорируется, если свойство Options включает goAlwayseShowEditor или не включает soEditing |
Property FixedColor: TColor: | Определяет цвет фиксированной зоны |
Property FixedCols: Integer: | Определяет количество столбцов фиксированной зоны |
Property FixedRows: Integer; | Определяет количество рядов фиксированной зоны |
Property GridHeight: Integer; | Содержит высоту таблицы |
Property GridLineWidth: Integer; | Определяет толщину линий, расчерчивающих таблицу |
Property GridWidth: Integer; | Содержит ширину таблицы |
Property LeftCol: Longint; | Содержит номер самого левого столбца, видимого в зоне прокрутки |
Property Options: TGridOptions; | Содержит параметры таблицы (см. ниже) |
PropertyRow: Longint; | Содержит номер ряда сфокусированной ячейки |
Property RowCount: Lonqint: | Содержит количество рядов таблицы |
Property RowHeights[lndex: Longint]: Integer; | Содержит высоту ряда с индексом Index |
TGridRect = record case Integer of 0: (Left, Top, Right/ Bottom: Longint); 1: (TopLeft, BottomRight: TGridCoord), end; Property Selection: TGridRect; | Определяет группу выделенных ячеек в координатах: левая верхняя и правая нижняя ячейки(нумерация столбцов и рядов идет от нуля, включая столбцы и ряды фиксированной зоны). После выделения сфокусированной окажется правая нижняя ячейка |
Property TabStops[lndex: Longint]: Boolean; | Разрешает/запрещает выбирать столбец с индексом Index при обходе ячеек клавишей Tab. Игнорируется, если Options не содержит goTabs |
Property TopRow: Longint; | Содержит номер самого верхнего ряда, видимого в прокручиваемой зоне ячеек |
Property VisibleColCount: Integer; | Содержит количество столбцов, полностью видимых в зоне прокрутки |
Property VisibleRowCount: Integer; | Содержит количество рядов, полностью видимых в зоне прокрутки |
Элементы множества TGridOptions имеют следующий смысл:
goFixedVertLine | Столбцы фиксированной зоны разделяются вертикальными линиями |
goFixedHorzLine | Ряды фиксированной зоны разделяются горизонтальными линиями |
goVertLine | Столбцы рабочей зоны разделяются вертикальными линиями |
goHorzLine | Ряды рабочей зоны разделяются горизонтальными линиями |
goRangeSelect | Разрешено выделение нескольких ячеек. Игнорируется, если включен элемент goEdit |
GoDrawFocus-Selected | Разрешено выделять сфокусированную ячейку так же, как выделенные. |
GoRowSizing | Разрешено ручное (мышью) изменение высоты строк |
GoColSizing | Разрешено ручное изменение ширины рядов |
GoRowMoving | Разрешено ручное перемещение рядов |
goColMoving | Разрешено ручное перемещение столбца |
goEditing | Разрешено редактирование ячейки. Игнорируется, если включен элемент goRowSelect. Редактирование начинается после щелчка мыши или нажатия клавиши F2 и завершается при щелчке по другой ячейке или нажатии Enter |
goTabs | Разрешено выбирать ячейки клавишей Tab (Shifts-Tab) |
goRowSelect | Обязывает выделять сразу все ячейки ряда |
GoAlwaysShowEditor | Разрешено редактировать сфокусированную ячейку. Игнорируется, если не включен элемент goEditing |
GoThumbTracking | Разрешено обновление при прокрутке. Если этот элемент отсутствует, обновление ячеек произойдет только после окончания прокрутки |
П2.3.5. TStringGrid
В отличие от компонента TStringGrid может отображать только текстовую информацию.
Property Cells[ACol, ARow: Integer]: strinq; | Определяет содержимое ячейки с табличными координатами (ACol A Row) |
Property Cols[Index: Integer]: TStrings; | Содержит все строки колонки с индексом Index |
Property Objects [ACol, ARow: Integer]: Tobject; | Обеспечивает доступ к объекту, связанному с ячейкой (ACol,ARow) |
Property Rows[lndex: Integer]: Tstrings; | Содержит все строки ряда с индексом Index |
П2.3.5. Timage
Этот компонент служит для размещения на форме одного из трех поддерживаемых Delphi типов изображений: растровой картинки, пиктограмм или метафайла.
П2.3.7. TShape
Компонент рисует одну из простейших геометрических фиг (прямоугольник, квадрат, скругленный прямоугольник, скругленный квадрат эллипс, окружность).
П2.3.8. TBevel
Предназначен для выделения группы элементов или отделения их друг для друга и носит чисто оформительский характер.
П2.3.9. TScrollBox
Компонент является контейнером для размещения других компонентов имеет возможность прокрутки.
П2.3.10. TCheckListBox
Группирует независимые переключатели, позволяя обратиться к любому из них по индексу.
Property AllowQrayed: Boolean; | Разрешает (запрещает) использовать в переключателях третье состояние cbGrayed |
Property Checked[Index: Integer]: Boolean; | Содержит выбор пользователя типа Да/Нет для переключателя с индексом Index. Состояния cbUnchecked и cbGrayed отражаются как False |
PropertySorted: Boolean: | Сортирует по алфавиту надписи на переключателях |
PropertyState[Index: Integer]: TCheckBoxState; | Содержит состояние переключателя с индексом Index: cbUncheeked; cbChecked: cbGrayed |
П2.3.11. TSplitter
Предназначен для ручного (с помощью мыши) управления paзмерами контейнеров TPanel, TGroupBox или подобных им во время прогона программы.
Property Beveled: Booleanж | Управляет трехмерным изображением компонента. Если False, компонент виден как узкая полоска фона между разделяемыми им компонентами |
NaturalNumber = 1..High(Integer); Property MinSize: NaturalNumber | Содержит минимальный размер любого из компонентов, которые разделяет TSplitter. Если выравнивание alLefi или alRight, минимальная ширина компонента - слева и справа от TSplitter, если аГГор или alBottom, минимальная высота компонента - выше или ниже него |
П2.3.12. TStaticText
Подобен компоненту TLabel за исключением того, что, во-первых, он имеет Windows-окно и, во-вторых, в его свойстве BorderStyle: добавлено значение sbsSunken, которое создает иллюзию "вдавленности" компонента.
П2.3.13. TChart
Облегчает создание специальных полей для графического представления данных.