Манипуляции с несколькими выделенными строками в DBGrid

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Манипуляции с несколькими выделенными строками в DBGrid

Сообщение wwswowsogon » 14.05.2020 11:17:07

Всем доброго времени суток!

Столкнулся со следующей проблемой: нужно что-либо сделать с данными при выделении нескольких строк в DBGrid. К примеру, банально удалить их.

Есть метод

Код: Выделить всё
DBGrid1.SelectedRows.Delete


и это прекрасно, но в некоторых таблицах при удалении записей желательно или даже необходимо удалять данные из других таблиц, связанных, например, ID'ом. Тогда, надо полагать, нужно получить ID'ы записей, которые в выделенных строках. Как это сделать?

В общем случае - как получить массив данных всех выделенных записей в DBGrid?

С одной записью понятно, как это сделать,

Код: Выделить всё
DBGrid.DataSource.DataSet.Fields.Field[0..n].As...

, а с несколькими - нет.
wwswowsogon
постоялец
 
Сообщения: 152
Зарегистрирован: 23.12.2008 20:41:37

Re: Манипуляции с несколькими выделенными строками в DBGrid

Сообщение Снег Север » 14.05.2020 15:37:58

Код: Выделить всё
For i := 0 to Grid.SelectedRows.Count -1 do begin
{ GoTo selected record: }
   Grid.datasource.dataset.Bookmark := Grid.SelectedRows.Items[i];
{ Do something with i-th selected record }
   ..................
end;
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Манипуляции с несколькими выделенными строками в DBGrid

Сообщение wwswowsogon » 15.05.2020 11:13:12

Спасибо!
Раньше не работал с закладками,краем уха слышал о них. Раскурил мануалы, полезная вещь, всё работает. :)
wwswowsogon
постоялец
 
Сообщения: 152
Зарегистрирован: 23.12.2008 20:41:37

Re: Манипуляции с несколькими выделенными строками в DBGrid

Сообщение Снег Север » 15.05.2020 14:39:47

Да не за что, это не я сам такой умный, я гугл :D , тоже когда-то понадобилось...
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 34

Рейтинг@Mail.ru