FoxPro Club Главная

Конференция Решения Фотоальбом Сайт М.Дроздова Статьи Файловый архив Книга Visual FoxPro 9.0 Русский Help для Visual FoxPro
Пользователей: 9265
Вход
Грид со строкой подсветки на базе Shape

Для тех, кто пока не работает в VFP 8. Строка подсветки на базе Shape более функциональна чем подсветка на базе DynamicBackColor: есть режим инверсии, можно использовать BackColor и DynamicBackColor для других целей.


 
Прислал: Алексей Кирпичев   Категория: Интерфейс


Основное назначение этого класса - Sql_Grid другое, строка подсветки прилагается как опция. Подробное описание см. в решении: Sql_Grid Краткое описание
В качестве строки подсветки для sql_grid'а может использоваться любой объект, производный от класса Shape. Достаточно положить его в тот же контейнер (форму, страницу PageFrame и т.д.), что и объект, производный от sql_grid и в свойстве hlt_shape этого объекта указать имя объекта Shape.
Недостатки:
  • объект в активной колонке получает фокус и располагается поверх строки подсветки;
  • когда строка подсветки располагается поверх Grid'а, не возможно передать события мыши и получить фокус объекта, расположенного под Shape.
Эти недостатки устраняются с помощью классов, содержащихся в поставляемой библиотеке:
  • Hlt_Shape – Shape, настроенный для использования в качестве строки подсветки: DrawMode установлен в Merge Pen Not (14), события мыши (MouseDown, MouseUp, MouseMove, Click, DblClick) передаются в объект, расположенный под ним. Для передачи событий в Grid имеет свойство LinkedGrid, в которое нужно внести имя объекта класса sql_grid. Таким образом, для согласованной работы Sql_Grid'а и строки подсветки класса Hlt_Shape необходимо сделать перекрестные ссылки друг на друга в свойствах Hlt_shape (в объекте класса Sql_Grid) и LinkedGrid (в объекте класса Hlt_Shape)
  • Hlt_Text – класс, производный от TextBox. Специально создан для использования со строкой подсветки в объекте класса Sql_grid. Представляет из себя обычный textbox, но при получении фокуса вызывает метод BringHighLight родительского объекта sql_grid, т.е. фокуса он не получает – подходит только для отображения данных в Grid'е, без изменения прямо в нем (мне это подходит, т.к. все изменения данных я делаю в отдельных формах) При использовании этих классов совместно с Sql_Grid строка подсветки работает без указанных недостатков.
 
Сделайте оценку этого решения Плохо Удовлетворительно Так себе Хорошо Отлично Текущая оценка: (4.881)
Дополнения пользователей
Грид со строкой подсветки на базе Shape
[+][?]
[Дополнить]



© 2000-2017 Fox Club 
При размещении любых материалов с сайта на других ресурсах- прямая ссылка на www.foxclub.ru обязательна
Яндекс.Метрика