Табличное представление данных. Компонент TDBGrid.
Таблица 15.2. Свойства и методы компонента WBGrid.
Объявление | Тип | Описание |
---|---|---|
Свойства | ||
property Columns: TDBGridColumns; | Pb | Содержит коллекцию объектов TColumn, описывающих колонки компонента |
property DefaultDrawing: Boolean; | Pb | Определяет способ визуализации данных в сетке. При значении True данные отображаются автоматически. При значении False используется метод-обработчик OnDrawColumnCell |
property FieldCount: Integer; | Ro | Возвращает число видимых колонок сетки |
property Fields [Index: Integer]: TField; | Ro | Массив объектов полей набора данных, отображаемых в компоненте |
TDBGridOption = (dgEditing, dgAlwaysShowEditor, dgTitles, dglndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgConfirmDelete, dgCancelOnExit, dgMultiSelect); TDBGridOptions = set of TDBGridOption; |
Pb | Определяет особенности визуализации и поведения компонента:
|
property SelectedField: TField; | Pu | Содержит объект текущего поля |
property Selectedlndex: Integer; | Pu | Содержит номер текущей колонки в массиве свойства Columns |
property SelectedRows: TBookmarkList; | Ro | Набор закладок на записи набора данных, соответствующих выделенным строкам сетки |
property TitleFont: TFont; | Pb | Шрифт заголовков колонок |
property EditorMode: Boolean; | Pu | Показывает, можно ли редактировать текущую ячейку |
property FixedColor: TColor; | Pb | Цвет фона неподвижных ячеек сетки |
Методы | ||
procedure DefaultDrawColumnCell (const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); | Pu | Перерисовывает текст в ячейке колонки с номером DataCol. Ячейка задается прямоугольником Rect на канве сетки. Параметр state определяет состояние ячейки после перерисовки. Параметр Column содержит экземпляр класса колонки, которой принадлежит ячейка |
procedure DefaultDrawDataCell (const Rect: TRect; Field: TField; State: TGridDrawState); | Pu | Перерисовывает текст в ячейке колонки, определяемой параметром Field, содержащим связанный с колонкой объект поля. Ячейка задается прямоугольником Rect на канве сетки. Параметр State определяет состояние ячейки после перерисовки |
procedure DefaultHandler (var Msg); override; | Pu | Вызывает всплывающее меню для колонки, которой соответствуют текущие координаты мыши. Компонент должен обрабатывать сообщение WM RBUTTONUP |
function ExecuteAction (Action: TBasicAction): Boolean; override; | Pu | Выполняет действие, заданное параметром Action, по отношению к данному компоненту |
procedure ShowPopupEditor (Column: I TColumn; X: Integer = Low (Integer); Y: Integer = Low (Integer)); dynamic; | Pu | Открывает набор данных, связанный с передаваемой параметром Column колонкой в новом окне. Работает только для типов данных абстрактный и набор данных. Параметры X и Y определяют положение нового окна |
function ValidFieldlndex (Fieldlndex: Integer): Boolean; | Pu | Возвращает значение True, если колонка с номером Fieldlndex связана с полем набора данных |
type TGridCoord = record X: Longint;Y: Longint; end; function MouseCoord(X, Y: Integer): TGridCoord; |
Pu | Возвращает номера строки и столбца, соответствующие ячейке, которой принадлежат экранные координаты X и Y |
Методы-обработчики событий | ||
type TDBGridClickEvent = procedure (Column: TColumn) 1 of object; property OnCellClick: TDBGridClickEvent; |
Pb | Вызывается при щелчке мышью на ячейке. Параметр Column содержит колонку, которой принадлежит ячейка |
property OnColEnter: TNotifyEvent; | Pb | Вызывается при переносе фокуса на новую колонку сетки |
property OnColExit: TNotifyEvent; | Pb | Вызывается перед переносом фокуса из текущей колонки |
type TMovedEvent = procedure (Sender: TObject; Froinlndex, Tolndex: Longint) of object; property OnColumnMoved: TMovedEvent; |
Pb | Вызывается при переносе колонки в сетке на новое место при помощи мыши. Параметр Fromindex возвращает номер старого положения колонки. Параметр Tolndex возвращает номер нового положения колонки |
type TDrawColumnCellEvent = procedure (Sender: TObject; const Rect: TRect; DataCol: State: TGridDrawState) of object; property OnDrawColurnnCell: TDrawColumnCellEvent; |
Pb | Вызывается при перерисовке ячейки. Параметр Rect определяет ячейку по координатам прямоугольника на канве. Параметр DataCol возвращает номер колонки в сетке. Параметр Column содержит объект колонки. Параметр State возвращает состояние колонки |
type TDrawDataCellEvent = procedure (Sender: TObject; const Rect: TRect; Field: TField; State: TGridDrawState) of object; property OnDrawDataCell: TDrawDataCellEvent; |
Pb | Вызывается при перерисовке ячейки перед обработчиком OnDrawCoiumnCell, если свойство Columns.State =csDefault. Этот метод лучше не применять, т. к. он используется только для обеспечения обратной совместимости с ранними версиями |
property OnEditButtonClick: TNotifyEvent; | Pb | Вызывается при щелчке мышью на кнопке в ячейке |
type TDBGridClickEvent = procedure (Column: TColumn) of object; property OnTitleClick: TDBGridClickEvent; |
Pb | Вызывается при щелчке мышью на заголовке колонки. Колонка определяется параметром Column |