TableGrid
Назначение
Компонент служит для вывода записей из БД в табличном виде.
Класс: TdbStringGridEx
Свойства компонента
Свойство |
Тип |
Описание |
dbCustomOrderBy |
String |
Позволяет указать сортировку. Например можно указать сортировку по двум поля БД одновременно, например: tablename.fieldname1, tablename.fieldname2 или tablename.fieldname1 ASC, tablename.fieldname2 DESC |
dbFilter |
String |
Позволяет задать дополнительный фильтр, который будет использован для заполнения компонента данными из БД. Например: tablename.fieldname = 1 |
dbGeneralTable |
String |
Содержит название главной таблицы БД, именно из данной таблицы вы получаете идентификатор (поле БД id) выделенной записи с помощью свойства dbItemID либо sqlValue. Также свойство может содержать внешний ключ, если например компонент используется для поиска. |
dbGetSqlStatement |
String |
Свойство позволяет получить последний SQL запрос, который использовался для заполнения компонента данными из БД. |
dbIncremSearch |
String |
Позволяет указать имя кнопки на текущей форме с действием "Поиск" или "SQL запрос", которая будет автоматически нажиматься при вводе текста пользователем для моментального поиска. |
dbItemID |
Integer |
Идентификатор выбранной записи в компоненте. Идентификатор соотвествует полю id в базе данных. |
Integer |
Позволяет задать максимальное количество записей, которое будет выведено в компонент. Подробней. |
|
dbListFieldsNames |
String |
Содержит названия заголовков для столбцов разделенных через запятую. |
Integer |
Позволяет задать смещение при получении записей из БД. Подробней. |
|
dbParentTable |
String |
Содержит название родительской таблицы БД, когда в компонент выводятся дочерние записи (опция: Показать дочерние записи). |
dbParentTableId |
Integer |
Содержит идентификатор (id поле) родительской записи в родительской таблице (dbParentTable), когда в компонент выводятся дочерние записи (опция: Показать дочерние записи). |
TPopupMenu |
Свойство обеспечивает доступ к всплыващему меню компонента. Подробней. |
|
dbSortAsc |
Boolean |
Если True, то записи будут отсортированы по возрастанию, иначе по убыванию. Значение свойства будет проигнорировано, если в свойстве dbCustomOrderBy указана другая сортировка. |
dbSortField |
String |
Поле БД, по которому будут отсортированы записи в компоненте. Значение свойства будет проигнорировано, если в свойстве dbCustomOrderBy указана другая сортировка. |
String |
Содержит SQL запрос, если компонент был заполнен данными с помощью кнопки с действием "SQL запрос". Также свойство позволяет задать собственный SQL запрос, который будет выполнен при вызове метода dbSQLExecute. Подробней. |
|
sqlValue |
String |
Возвращает id выбранной записи в компоненте для использования в SQL запросах. В случае пустого значение, вернет строку NULL |
AllowCreate |
Boolean |
Отвечает за возможность создавать новые записи непосредственно в компоненте. |
AllowCreateEmpty |
Boolean |
Отвечает за возможность создание новый пустых записей. |
AllowEdit |
Boolean |
Отвечает за возможность редактирования записей непосредственно в компоненте. |
AllowDelete |
Boolean |
Отвечает за возможность удаления записей непосредственно в компоненте. |
SecondClickEdit |
Boolean |
Определяет, необходимо ли два раза кликнуть мышкой по ячейке для редактирования записи. |
BorderStyle |
TBorderStyle |
Определяет наличие бордюра у компонента. Доступные значения: bsSingle, bsNone |
CanFocus |
Boolean |
Проверяет, может ли компонент получить фокус ввода. Обычно свойство используется совместно с методом SetFocus. |
TCanvas |
Класс, позволяющий рисовать на компоненте. Подробней. |
|
TCell |
Свойство для доступа к дополнительным свойствам указанной ячейке компонента (x - колонка, y - строка). Подробней. |
|
Cells[x,y] |
String |
Свойство для доступа к текстовому содержимому ячейки. |
ClientWidth |
Integer |
Ширина клиенсткой части компонента (т.е. без учета бордюров). |
ClientHeight |
Integer |
Высота клиенсткой части компонента (т.е. без учета бордюров). |
TColor |
Цвет фона компонента. Подробней. |
|
TNxColumns |
Свойство для доступа к дополнительным свойствам и методам колонок. Подробней. |
|
TNxCustomColumn |
Свойство для доступа к свойствам указанной колонки. Подробней. |
|
TCursor |
Позволяет выбрать вид курсора для компонента. Подробней. |
|
Enabled |
Boolean |
Определяет доступность компонента для пользователя. |
FixedCols |
Integer |
Задает количество фиксированных колонок, которые не будут перемещаться при горизонтальном скролле. |
Focused |
Boolean |
Проверяет, имеет ли компонент фокус ввода. Только для чтения. |
TFont |
Позволяет задать имя, размер, цвет и стиль шрифта. Подробней. |
|
HeaderSize |
Integer |
Высота заголовков. |
Hint |
String |
Текст всплывающей подсказки, см. также ShowHint |
TNxScrollBar |
Свойство для доступа к дополнительным свойствам и методам полосы прокрутки. Подробней. |
|
LastAddedRow |
Integer |
Свойство возвращает индекс последней добавленной строки. Только для чтения. |
Name |
String |
Уникальное имя компонента на форме. |
TGridOptions |
Дополнительные настройки компонента. Подробней. |
|
Parent |
TWinControl |
Родительский компонент, на котором расположен данный компонент. |
RowCount |
Integer |
Содержит количество строк в компоненте. |
RowSize |
Integer |
Высота строк. |
TRow |
Доступ к дополнительным свойствам строки по ее индексу. Подробней. |
|
RowVisible[i] |
Boolean |
Определяет видимость строки по ее индексу. |
Selected[i] |
Boolean |
Выделяет указанную строку. |
SelectedRow |
Integer |
Определяет выделенную строку. |
SelectedColumn |
Integer |
Содержит индекс выделенной колонки. |
SelectedCount |
Integer |
Возвращает количество выделенных строк. |
ShowHint |
Boolean |
Определяет, показывать ли всплывающую подсказку, см. также Hint |
SlideSize |
Integer |
Определяет высоту слайда. Имеет смысл, когда свойство компонента GridStyles = gsSlides. Подробней про режим gsSlides. |
SortedColumn |
TNxCustomColumn |
Ссылка на отсортированную колонку. |
TabOrder |
Integer |
Определяет порядковый номер компонента в очереди обхода фокусом ввода компонентов, находящихся на Форме, при нажатии клавиши Tab |
TabStop |
Boolean |
Определяет, будет ли компонент получать фокус, при нажатии клавиши Tab на форме |
Tag |
Integer |
Позволяет присвоить число компоненту для собственных нужд. |
TagString |
String |
Позволяет присвоить строку компоненту для собственных нужд. |
TNxScrollBar |
Свойство для доступа к дополнительным свойствам и методам полосы прокрутки. Подробней. |
|
Visible |
Boolean |
Определяет видимость компонента. |
VisibleRows |
Integer |
Возвращает количество видимых строк. |
Left |
Integer |
X координата компонента на форме. |
Top |
Integer |
Y координата компонента на форме. |
Width |
Integer |
Ширина компонента. |
Height |
Integer |
Высота компонента. |
Методы компонента
Метод |
Описание |
function dbIndexToID (index: Integer): integer |
Позволяет получить идентификатор записи (поле БД id), указав порядковый номер строки. |
function dbUpdate: String |
Принудительно обновляет данные в компоненте. Как правило компонент обновляет данные автоматически, если данные были изменены. Также возвращает SQL запрос, который был использован для обращения к БД. |
function AddRow (Count: Integer = 1): Integer |
Добавляет указанное количество строк в компонент. При этом данные в БД не добавляются. |
procedure BeginUpdate |
Вызывается перед выполнением большого количество операций с компонентом, чтобы увеличить быстродействие. В конце необходимо вызвать метод EndUpdate. |
procedure BestFitColumns (BestFitMode: TBestFitMode = bfCells) |
Метод автоматически подбирает ширину колонок. Подробней. |
procedure BestFitRow (const Index: Integer) |
Метод автоматически подбирает высотку строки, в зависимости от содержимого ячеек в данной строке. Подробней. |
procedure CalculateFooter (VisibleOnly: Boolean = False) |
Принудительно пересчитывает результаты в подвале компонента. |
procedure ClearRows |
Очищает содержимое компонента. |
procedure DeleteRow (Index: Integer) |
Удаляет указанную строку. При этом запись из БД не удаляется. |
function ExportToExcel (FileName: string = ''; ExcelVisible: boolean = True; FirsRowColumns: boolean = True): Variant |
Делает экспорт данных из компонента в Excel. Также возвращает OLE объект Excel, для последующей работы с данными. |
function ExportToLibreCalc (FirsRowColumns: boolean = True): Boolean |
Делает экспорт данных из компонента в OpenOffice (LibreOffice). |
procedure EndUpdate |
Смотри BeginUpdate |
function GetRowAtPos (X, Y: Integer): Integer |
Позволяет получить индекс строки по координатам. |
function GetColumnAtPos (X, Y: Integer): TNxCustomColumn |
Позволяет получить ссылку на колонку по координатам. |
procedure InsertRow (Pos: Integer; Count: Integer = 1) |
Вставляет новую строку в указанную позицию. При этом данные в БД не добавляются. |
procedure MoveRow (FromPos, ToPos: Integer) |
Перемещает строку. При этом изменения в БД не производятся. |
procedure SaveToTextFile (const FileName: String; Separator: Char = ','; MultiLineSeparator: Char = '|') |
Сохраняет содержимое компонента в текстовый файл. Используемая кодировка файла Unicode (UCS-2 Little Endian). |
procedure SaveToHtml (FileName: String; SaveHeaders: boolean = True; AllRows: boolean = False; CreateStyleSheet: boolean = True; SaveFooter: boolean = False; SaveCaption: boolean = False) |
Сохраняет содержимое компонента в HTML файл. |
procedure LoadFromTextFile (const FileName: String; Separator: Char = ','; MultiLineSeparator: Char = '|'; StartRow: Integer = 0) |
Загружает данные текстового файла в компонент. При этом данные не попадают в базу данных. Используемая кодировка загружаемого файла должны быть Unicode (UCS-2 Little Endian) |
procedure ScrollToRow (index: integer) |
Перемещает скролл в таблице, чтобы была видна указанная строка. |
procedure SelectAll |
Выделяет все строки в компоненте. Для работы метода, необходимо чтобы в свойстве Options присутствовали значения goMultiSelect и goSelectFullRow. |
procedure SelectRange (FromRow, ToRow: Integer; Value: Boolean) |
Выделяет (либо снимает выделение, если Value = False) указанный диапазон строк. |
procedure SetFocus |
Устанавливает фокус ввода для компонента. |
procedure SwapRows (FromPos, ToPos: Integer) |
Меняет строки местами. |
События компонента
Событие |
Описание |
OnApplyEditText (Sender: TObject; ACol, ARow: Integer; var Value: String) |
Срабатывает при окончании редактировании ячейки. Позволяет изменить введеное значение. Подробней. |
OnAfterEdit (Sender: TObject; ACol, ARow: Integer; Value: String) |
Срабатывает когда редактирование ячейки успешно завершено. Подробней. |
OnAfterRowMove (Sender: TObject; FromPos, ToPos: Integer) |
Срабатывает, когда пользователь успешно переместил строку на новую позицию. |
OnAfterSort (Sender: TObject; ACol: Integer) |
Срабатывает после сортировки колонки. |
OnBeforeEdit (Sender: TObject; ACol, ARow: Integer; var Accept: Boolean) |
Срабатывает, перед тем, как ячейка перейдет в режим редактирования. Позволяет запретить редактирование. Подробней. |
OnCellClick (Sender: TObject; ACol, ARow: Integer) |
Срабатывает, когда пользователь кликнул по ячейке. Подробней. |
OnCellDoubleClick (Sender: TObject; ACol, ARow: Integer) |
Срабатывает, когда пользователь сделал двойной клик по ячейке. |
OnChange (Sender: TObject) |
Срабатывает после того, как компонент был заполнен данными из базы данных. |
OnClick (Sender: TObject) |
Срабатывает при клике по компоненту. |
OnColumnResize (Sender: TObject; ACol: Integer) |
Срабатывает, при изменении размера колонки. |
OnDoubleClick (Sender: TObject) |
Срабатывает при двойном клике по компоненту |
OnEditAccept (Sender: TObject; ACol, ARow: Integer; Value: String; var Accept: Boolean) |
Срабатывает, когда пользователь закончил редактирование ячейки, например выбрал другую ячейку или нажал на Enter. Позволяет отклонить введеное значение. Подробней. |
OnEnter (Sender: TObject) |
Срабатывает при получении компонентом фокуса ввода. |
OnExit (Sender: TObject) |
Срабатывает при потере компонентом фокуса ввода. |
OnFooterClick (Sender: TObject; ACol: Integer) |
Срабатывает, когда пользователь кликнул по футеру (подвал). |
OnHeaderClick (Sender: TObject; ACol: Integer) |
Срабатывает, когда пользователь кликнул заколовку колонки. |
OnHeaderDoubleClick (Sender: TObject; ACol: Integer) |
Срабатывает, когда пользователь сделал двойной клик заколовку колонки. |
OnInputAccept (Sender: TObject; var Accept: Boolean) |
Срабатывает, перед тем, как будет добавлена новая запись из строки ввода. Позволяет отменить создание новой записи. Подробней. |
OnInputSelectCell (Sender: TObject; ACol: Integer) |
Срабатывает, когда пользователь перешел на строку ввода. |
OnKeyDown (Sender: TObject; var Key: Word; Shift, Alt, Ctrl: boolean) |
Срабатывает при нажатии на любую кнопку клавиатуры. |
OnKeyPress (Sender: TObject; var Key: Char) |
Срабатывает при нажатии на кнопку клавиатуры. Работает только для печатных символов. |
OnKeyUp (Sender: TObject; var Key: Word; Shift, Alt, Ctrl: boolean) |
Срабатывает при отпускании любой кнопки на клавиатуре. |
OnLoadProgress (Sender: TObject; ACol, ARow: Integer) |
Срабатывает при загрузке текстового файла в компонент с помощью метода LoadFromTextFile |
OnMouseDown (Sender: TObject; MouseLeft, MouseRight, MouseMiddle: boolean; Shift, Alt, Ctrl: boolean; X, Y: Integer) |
Срабатывает в момент нажатия кнопки мыши над компонентом. |
OnMouseEnter (Sender: TObject) |
Срабатывает при заходе курсора мыши на компонент. |
OnMouseLeave (Sender: TObject) |
Срабатывает при покидании курсора мыши компонента. |
OnMouseMove (Sender: TObject; Shift, Alt, Ctrl: boolean; X, Y: Integer) |
Срабатывает при перемещении курсора над компонентом. |
OnMouseUp (Sender: TObject; MouseLeft, MouseRight, MouseMiddle: boolean; Shift, Alt, Ctrl: boolean; X, Y: Integer) |
Срабатывает в момент отпускания кнопки мыши над компонентом. |
OnResize (Sender: TObject) |
Срабатывает при изменении размеров компонента. |
OnRowMove (Sender: TObject; FromPos, ToPos: Integer; var Accept: Boolean) |
Cрабатывает, когда пользователь переместил строку на новую позицию. Позволяет отменитиь перемещение. Подробней. |
OnSortColumn (Sender: TObject; ACol: Integer; Ascending: Boolean) |
Срабатывает перед сортировкой колонки. |
OnDropFiles (Sender: TObject; ArrayOfFiles: array of string; X, Y: Integer) |
Срабатывает при попытке перетащить файл из проводника на компонент. Подробней. |