Вниз
Скачать: CL | DM;

Как в DBGrid сделать дополнительный bookmark   Найти похожие ветки 

← →
Rat   (2005-06-07 05:27) [0]

То,что уже есть-
DB-grid(связан с ADOquery) показывает записи(из sql-серверa). Юзер выделяет несколько записей(через Ctrl+клик) и нажимает кнопку(в проге)- удалить записи. Идет цикл по bookmark и каждая запись удаляется.
То, что нужно-
юзерам неудобно так делать, когда записей много, им хочется, чтобы, как в некоторых программах, выделенные строки по нажатию на кнопку помечались на удаление(строки бы окрашивались, скажем в желтый цвет), потом к ним можно было бы добавить еще строки и т.д.
P/S(это все надо только в пределах сеанса работы с этим гридом)


← →
Rat   (2005-06-07 05:51) [1]

Концовку забыл приписать:)- Подскажите примерно хотябы кто что знает по этому вопросу. И возможно ли такое вообще в гриде?


← →
Ярослав   (2005-06-07 06:40) [2]

Я в таком случае по другому делаю, в таблице долаю спец поле, в которое помечаю что запись удалена, но в гриде ее видно, и исходя из состояния этого поля можно строки в гриде красить. Когда все готово записи можно удалить полностью, ну или еще чего нибудь сделать.


← →
Rat   (2005-06-07 06:48) [3]

Спасибо, попробую так и сделать


← →
msguns ©   (2005-06-07 09:37) [4]

Можно обойтись и без доп.поля.
Для этого при считке (переоткрытии) НД создается список объектов, состоящих из указателя (ID) и байта - флажка.
При "щелканьи" юзером на записи в списке ищется соотв-й ей ID, и содержимое флажка в найденном объекте инвертируется.
В событии OnDrawColumnCell грида выполняется поиск объекта из списка по ID записи и в зависимости от состояния его флажка рисуется чекбокс или меняется цвет фона строки.

По закрытию НД список уничтожается вместе с объектами, ссылки на которые он содержит.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
9-1111645986
ninja
2005-03-24 09:33
2005.06.29
интерфейс пользователя в игре


8-1109756936
X-Disa
2005-03-02 12:48
2005.06.29
Проблем с Preview и Undo


1-1117806913
Deka
2005-06-03 17:55
2005.06.29
Обновление для Delphi 2005...


1-1117867566
seregka
2005-06-04 10:46
2005.06.29
как очистить буфер обмена


1-1117703923
Rentgen
2005-06-02 13:18
2005.06.29
Massiv[ALL]:=99;




   Наверх