Назначение


Компонент служит для вывода записей из БД в табличном виде.



Класс: 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 в базе данных.

 dbLimit

 Integer

 Позволяет задать максимальное количество записей, которое будет выведено в компонент. Подробней.

 dbListFieldsNames

 String

 Содержит названия заголовков для столбцов разделенных через запятую.

 dbOffSet

 Integer

 Позволяет задать смещение при получении записей из БД. Подробней.

 dbParentTable

 String

 Содержит название родительской таблицы БД, когда в компонент выводятся дочерние записи (опция: Показать дочерние записи).

 dbParentTableId

 Integer

 Содержит идентификатор (id поле) родительской записи в родительской таблице (dbParentTable), когда в компонент выводятся дочерние записи (опция: Показать дочерние записи).

 dbPopupMenu

 TPopupMenu

 Свойство обеспечивает доступ к всплыващему меню компонента. Подробней.

 dbSortAsc

 Boolean

 Если True, то записи будут отсортированы по возрастанию, иначе по убыванию. Значение свойства будет проигнорировано, если в свойстве dbCustomOrderBy указана другая сортировка.

 dbSortField

 String

 Поле БД, по которому будут отсортированы записи в компоненте. Значение свойства будет проигнорировано, если в свойстве dbCustomOrderBy указана другая сортировка.

 dbSQL

 String

 Содержит SQL запрос, если компонент был заполнен данными с помощью кнопки с действием "SQL запрос". Также свойство позволяет задать собственный SQL запрос, который будет выполнен при вызове метода dbSQLExecute. Подробней.

 sqlValue

 String

 Возвращает id выбранной записи в компоненте для использования в SQL запросах. В случае пустого значение, вернет строку NULL

 пример: SQLExecute ('INSERT INTO tablename (fieldname) VALUES ('+Form1.TableGrid1.sqlValue+')');

 AllowCreate

 Boolean

 Отвечает за возможность создавать новые записи непосредственно в компоненте.

 AllowCreateEmpty

 Boolean

 Отвечает за возможность создание новый пустых записей.

 AllowEdit

 Boolean

 Отвечает за возможность редактирования записей непосредственно в компоненте.

 AllowDelete

 Boolean

 Отвечает за возможность удаления записей непосредственно в компоненте.

 SecondClickEdit

 Boolean

 Определяет, необходимо ли два раза кликнуть мышкой по ячейке для редактирования записи.

 BorderStyle

 TBorderStyle

 Определяет наличие бордюра у компонента. Доступные значения: bsSingle, bsNone

 CanFocus

 Boolean

 Проверяет, может ли компонент получить фокус ввода. Обычно свойство используется совместно с методом SetFocus.

 Canvas

 TCanvas

 Класс, позволяющий рисовать на компоненте. Подробней.

 Cell[x,y]

 TCell

 Свойство для доступа к дополнительным свойствам указанной ячейке компонента (x - колонка, y - строка). Подробней.

 Cells[x,y]

 String

 Свойство для доступа к текстовому содержимому ячейки.

 ClientWidth

 Integer

 Ширина клиенсткой части компонента (т.е. без учета бордюров).

 ClientHeight

 Integer

 Высота клиенсткой части компонента (т.е. без учета бордюров).

 Color

 TColor

 Цвет фона компонента. Подробней.

 Columns

 TNxColumns

 Свойство для доступа к дополнительным свойствам и методам колонок. Подробней.

 Columns[i]

 TNxCustomColumn

 Свойство для доступа к свойствам указанной колонки. Подробней.

 Cursor

 TCursor

 Позволяет выбрать вид курсора для компонента. Подробней.

 Enabled

 Boolean

 Определяет доступность компонента для пользователя.

 FixedCols

 Integer

 Задает количество фиксированных колонок, которые не будут перемещаться при горизонтальном скролле.

 Focused

 Boolean

 Проверяет, имеет ли компонент фокус ввода. Только для чтения.

 Font

 TFont

 Позволяет задать имя, размер, цвет и стиль шрифта. Подробней.

 HeaderSize

 Integer

 Высота заголовков.

 Hint

 String

 Текст всплывающей подсказки, см. также ShowHint

 HorzScrollBar

 TNxScrollBar

 Свойство для доступа к дополнительным свойствам и методам полосы прокрутки. Подробней.

 LastAddedRow

 Integer

 Свойство возвращает индекс последней добавленной строки. Только для чтения.

 Name

 String

 Уникальное имя компонента на форме.

 Options

 TGridOptions

 Дополнительные настройки компонента. Подробней.

 Parent

 TWinControl

 Родительский компонент, на котором расположен данный компонент.

 RowCount

 Integer

 Содержит количество строк в компоненте.

 RowSize

 Integer

 Высота строк.

 Row[i]

 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

 Позволяет присвоить строку компоненту для собственных нужд.

 VertScrollBar

 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)

 Срабатывает при попытке перетащить файл из проводника на компонент. Подробней.