Форум: "Начинающим";
Текущий архив: 2008.11.02;
Скачать: [xml.tar.bz2];
ВнизРабота с DBGried. Найти похожие ветки
← →
Matveih1 © (2008-09-19 16:29) [0]Как сделать так, что бы по нажатию на пробел выделялась строка в DBGried на которой стоит курсор, а если строка была выделена то выделение сбрасывалось и курсор переходил на следующую строку? Что то вроде множественного выбора но только с помощь пробела.
← →
clickmaker © (2008-09-19 16:35) [1]OnKeyPress
Options.dgRowSelect
DataSet.Next
← →
Matveih1 © (2008-09-19 16:46) [2]Понятно что обработчи вешать на KeyPress.
DataSet.Next – на следующую строку переходит Спасибо.
Только не выделяет строку на которой был.
← →
Плохиш © (2008-09-19 16:50) [3]SelectedRows + F1
← →
Matveih1 © (2008-09-19 17:00) [4]не очень помогло. Как обрабатывать выбранные я понял но вот как из выделить и что бы при это не отменилось то что было выделено что то никак.
← →
Сергей М. © (2008-09-19 17:10) [5]
> как из выделить
Установка св-ва
DBGrid.SelectedRows.CurrentRowSelected := True
делает текущую запись дейтасета выделенной при ее выводе гридом.
Что тут не понятно ?
← →
Поросенок Винни-Пух © (2008-09-19 17:12) [6]DBGrid.SelectedRows.CurrentRowSelected := not DBGrid.SelectedRows.CurrentRowSelected
← →
Matveih1 © (2008-09-19 17:16) [7]СПАСИБО. Все получилось
← →
Matveih1 © (2008-09-19 17:24) [8]Еще один вопрос. Как сделать чтобы при перемещении по DBGried то что было выделено не сбрасывалось?
← →
Правильный$Вася (2008-09-19 17:33) [9]
> при перемещении по DBGried
чем и как?
← →
Matveih1 © (2008-09-19 17:36) [10]При перемещении с помощь стрелок VK_LEFT, VK_UP, VK_RIGHT,VK_DOWN.
Вообще желательно при любом перемещении. Выделять стороку и сбрасывать выделение только при помощи пробела.
← →
Плохиш © (2008-09-19 18:28) [11]
> Matveih1 © (19.09.08 17:36) [10]
Это выходит за рамки встроенной обработки dgRowSelect. Реализуй сам.
← →
MsGuns © (2008-09-20 18:30) [12]Самый простой способ:
Создать массив integer или список, куда помещать ID записи, которую пользователь выделяет Если запись уже была выделена, то из списка удалять ее ID.
В грид добавить колонку, связанную с полем, содержимое которого не надо отображать (лучше всего ID), в обработчик OnGetText этого поля прописать Text := "" для того, что в этой ячейке ничего не рисовалось. Либо вместо доп.колонки использовать цветовое или шрифтовое выделение
В обработчике OnColumnCell грида искать ID отрисовываемой записи в упомянутом массиве (списке) и, если найден, то рисовать там "чекнутый" чекбокс либо иконку с галкой.
Установку/снятие отметки выполнять в обработчике двойного клика или какой-либо другой клавиши
Для обработки всего выбранного перечня записей использовать идентификаторы выбранных записей в массиве или списке
← →
MsGuns © (2008-09-20 18:31) [13]Пардон, вместо OnColumnCell читать OnDrawColumnCell
← →
Matveih1 © (2008-09-22 10:00) [14]Спасибо MsGuns! Идея хорошая. Попробую реализовать
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.11.02;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c