![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как в DBGrid сделать дополнительный bookmark
Rat © (2005-06-07 05:27:00)То,что уже есть-
DB-grid(связан с ADOquery) показывает записи(из sql-серверa). Юзер выделяет несколько записей(через Ctrl+клик) и нажимает кнопку(в проге)- удалить записи. Идет цикл по bookmark и каждая запись удаляется.
То, что нужно-
юзерам неудобно так делать, когда записей много, им хочется, чтобы, как в некоторых программах, выделенные строки по нажатию на кнопку помечались на удаление(строки бы окрашивались, скажем в желтый цвет), потом к ним можно было бы добавить еще строки и т.д.
P/S(это все надо только в пределах сеанса работы с этим гридом)
msguns (2005-06-07 09:37:00) [1]Можно обойтись и без доп.поля.
Для этого при считке (переоткрытии) НД создается список объектов, состоящих из указателя (ID) и байта - флажка.
При "щелканьи" юзером на записи в списке ищется соотв-й ей ID, и содержимое флажка в найденном объекте инвертируется.
В событии OnDrawColumnCell грида выполняется поиск объекта из списка по ID записи и в зависимости от состояния его флажка рисуется чекбокс или меняется цвет фона строки.
По закрытию НД список уничтожается вместе с объектами, ссылки на которые он содержит.
Rat (2005-06-07 06:48:00) [2]Спасибо, попробую так и сделать
Ярослав (2005-06-07 06:40:00) [3]Я в таком случае по другому делаю, в таблице долаю спец поле, в которое помечаю что запись удалена, но в гриде ее видно, и исходя из состояния этого поля можно строки в гриде красить. Когда все готово записи можно удалить полностью, ну или еще чего нибудь сделать.
Rat (2005-06-07 05:51:00) [4]Концовку забыл приписать:)- Подскажите примерно хотябы кто что знает по этому вопросу. И возможно ли такое вообще в гриде?