Настройка in place редактора ячейки grid'а
Несколько полей в выпадающем lookup-списке.
Для отображнения нескольких полей в выпадающем lookup-списке для lookup-полей установите в Column.LookupDisplayFields список полей. Точки с запятыми должны разделять множество имен полей. Имя Column.Field.LookupResultField должно присутствовать в списке LookupDisplayFields. Lookup-список с несколькими полями может быть назначен только lookup-полям. Это свойство работает только для полей DataSet'а типа Lookup (TField.FieldKind = fkLookup).
Столбец с простыми lookup-значениями.
Вы можете отображать в столбце другой текст, зависящий от значения поля. Используйте свойства KeyList и PickList. KeyList содержит значения, которые сохраняются в поле, а PickList - в соответствующих индексах содержит значения для отображения. Установите Column.NotInKeyListIndex в индекс текста из PickList, который отображается если значение поля не содержится в KeyList (например, вы можете задать индекс текста для Null-значения поля). Установите Column.DblClickNextval в True, чтобы менять значение double-кликом.
Выпадающий календарь.
Для полей TDateField и TDateTimeField редактор отображает dropdown-кнопку для отбражения выпадающего календаря. Установите Column.ButtonStyle в cbsNone для отключения отображения dropdown-кнопки.
Цвет и фонт текстового редактора по месту.
Редактор получает цвет и фонт из цвета и фонта ячейки. Ячейка получает цвет и фонт из столбца и в событии OnGetCellParams. Редактор автоматически устанавливает многострочный режим если высота строки больше высоты одной строки и свойство WordWrap для столбца установлен в True.
Автоматическая подгонка ширины столбцов grid'а под ширину клиентской области grid'а.
Установите AutoFitColWidths в True для автоматического изменения ширины столбцов так что ширина свей сетки будет равна видимой части окна сетки. Свойство MinAutoFitWidth определяет минимальную ширину grid'а при которой происходит изменение ширины.
3D и flat вид grid'а.
Используйте свойство OptionsEh для отображения/скрытия 3D-рамки вокруг фиксированных, закрепленных, колонтитулов и строк данных.
Используйте свойство Flat для отображения grid'а в плоском стиле.
Импорт/Экспорт данных TDBGridEh в/из разные форматы.
EhLib имеет набор функций для экспорта данных DataSet'а в Text, Csv, HTML, RTF, XLS и внутренние форматы. Он может записывать данные в поток (объект TStream) либо в файл.
Пример:
Pascal: SaveDBGridEhToExportFile(TDBGridEhExportAsText,DBGridEh1,'c:\temp\file1.txt',False);
C++: SaveDBGridEhToExportFile(__classid(TDBGridEhExportAsText),DBGridEh1,"c:\\temp\\file1.txt",false);
EhLib имеет набор функций для импорта данных из Text и внутренних форматов в DataSet подключенный к сетке. Он может считывать данные из потока (объект TStream) либо из файла.
Другие возможности.
В lookup-редакторе вы можете очистить (установить в Null) значение LookupKeyField в runtime. Просто выделите весь текст и нажмите Delete.
Закрепленная зона.
Закрепленная зона - это набор столбцов в левой части grid'а, который не прокручивается. В отличие от зафиксированных (fixed) столбцов, закрепленные (frozen) столбцы могут получать фокус ввода. Для определения числа непрокручиваемых столбцов задайте свойство FrozenCols.
Инкрементный поиск
TDBGridEh позволяет пользователям совершать специальный "инкрементный" поиск в столбце grid'а. Когда пользователь входит в режим инкрементного поиска, он может набирать символы и grid будет пытаеться найти набранный текст в текущем столбце. Используйте значения dghIncSearch и dghPreferIncSearch (свойство OptionsEh) для управления инкрементным поиском. В runtime вы можете использовать следующие сочетания клавиш для инкрементного поиска:
Ctrl+F - начало инкрементного поиска.
Ctrl+Enter - поиск следующего совпадения.
Ctrl+Shift+Enter - поиск предыдущего совпадения.
Если dghIncSearch включен в OptionsEh и столбец - только для чтения, тогда grid включает инкрементный поиск автоматически при первом нажатии клавиши и будет возвращен в нормальный режим через 1,5 секунд. Значение dghPreferIncSearch определяет, что grid установит режим инкрементного поиска автоматически при первом нажатии клавиши вместо редактирования.
Горизонтальная и вертикальная полосы прокрутки.
Используйте свойства VertSctollbar и HorzSctollbar для отображения/скрытия вертикальной и горизонтальной полос прокрутки.
Множественный выбор.
TDBGridEh позволяет выбирать записи, столбцы и прямоугольные области для последующих операций над выделенной областью. Для включения возможности множественного выбора установите следующие свойства:
dgMultiSelect в свойстве Options - определяет возможность множественного выбора.
dghClearSelection в свойстве OptionsEh - определяет, будет ли снято выделение после того как пользователь переместился к другой ячейке.
EditActions - определяет действия, которые пользователь может выполнять с выделенной областью (Copy, Cut, Delete, Paste, SelectAll).
AllowedSelections - определяет разрешенные типы выделения которые могут быть (Rows, Columns, Rectangle area, All).
Selection - определяет текущее состояние множественного выбора: выбранные записи, столбцы либо прямоугольные области и включает в себя свойства и функции для доступа к ним.
Сохранение и восстановление макета сетки и колонок в/из реестра либо ini-файл.
В TDBGridEh есть набор методов для сохранения и восстановления макета сетки и колонок в/из реестра либо ini-файл:
RestoreColumnsLayout - Восстановление порядка следования столбцов, ширины и состояния маркеров сортировки из реестра.
RestoreColumnsLayoutIni - Восстановление порядка следования столбцов, ширины и состояния маркеров сортировки из ini-файла.
RestoreGridLayout - Восстановление порядка следования столбцов, ширины, видимости, состояния маркеров сортировке, Sortmarked index и/или высоты строк из реестра.
RestoreGridLayoutIni - Восстановление порядка следования столбцов, ширины, видимости, состояния маркеров сортировке, Sortmarked index и/или высоты строк из ini-файла.
SaveColumnsLayout - Сохранения порядка следования столбцов, ширины и состояния маркеров сортировки в реестр.
SaveColumnsLayoutIni - Сохранения порядка следования столбцов, ширины и состояния маркеров сортировки в ini-файл.
SaveGridLayout - Сохранение порядка следования столбцов, ширин, видимости, состояния маркеров сортировке, Sortmarked index и/или высоты строк в реестр.
SaveGridLayoutIni - Сохранение порядка следования столбцов, ширин, видимости, состояния маркеров сортировке, Sortmarked index и/или высоты строк в ini-файл.
|