Расширенные возможности по работе с БД в Делфи
Часто возникает необходимость расширить возможности стандартных компонентов в среде Delphi. Например, добавить checkbox в Dbgrid. Чтобы вместо надписей true/false мы могли наблюдать поставленные нами галочки. С такой проблемой столкнулся и я. Но решение для нее конечно нашлось и о нем я расскажу ниже.
БиблиотекаEhLib обладает большим количеством дополнительных возможностей по сравненнию со стандартными, имеющимися в среде delphi. Поэтому, сначала скачиваем саму библиотеку. Затем распаковываем архив в любое удобное для вас место. Затем заходим в распакованную папку и находим каталог с именем Installer. Я распаковал архив на локальный диск С и поэтому полный путь к этой папке выглядел так:
C:\EhLib v5.6.215 Full Source\EhLib v5.6.215 Full Source\EhLib5_6_215_fs\Installer
Далее запускаем инсталлер вверху слева выбираем свою версию делфи или RadStudio, смотрим чтобы внизу стоя русский язык и нажимаем кнопочку установить. Теперь ждем пока не появится сообщение, что установка завершилась. Теперь можно запускать любые ваши проекты и вместо стандартой DbGrid будет автоматически стоять DbGridEh. Можете посмотреть насколько больше опций она имеет по сравнению с предком. В них может запутаться любой программист.
Чтобы сделать чекбоксы (checkbox) в булевых клетках кликаем по dbgrideh. В свойствах находим IndicatorOption и в свойстве gioShowRows ставим true. Теперь чекбоксы будут стоять во всех булевых ячейках и даже в начале каждой строки, для ее выбора. Но выбираться она не будет пока что. Кликая по булевый ячейкам вы увидите что галочки в них ставятся и убираются, но эти изменения не вносятся в саму базу данных. Для этого необохдимо в событии DbGridEh OnCellClick прописать сохранение этих данных сразу же и тогда результат будет достигнут. Если чекбоксы отображаются неправильно, тогда у свойства Column поставьте свойство Checkboxes = true. И разрешите редактирование самой БД через таблицу – у DBGrid поставьте свойство Read Only = false.
В свойстве AutoFitColWidths поставив true, мы сделаем чтобы ширина колонок подгонялась под размер введенных в нее данных, что очень удобно.
Все необходимые знания по работе с данной библиотекой Вы сможете найти в документе, который находится в архиве с самой библиотекой EhLib_Руководство разработчика.doc.
Автор: Соколов Виталий
Источник: delgame.at.ua
|