![]() |
|
|
![]()
|
|
| Ksen |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 97 Регистрация: 24.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
Всем здрасти)))) Помогите, пожалуйста, разобраться с MultiSelect в DBGrid...
Мне нужно запомнить выделенные записи....а через некоторое время отобразить их снова....как это можно лучше сделать? Пока я додумалась только...переносить в Мемо поля выделенных записей, а потом из этого Мемо искать поле в бд и выделять запись.... )))добавлять выделенные поля в Мемо я научилась... Memo1.Clear; for i := 0 to DBGrid1.SelectedRows.Count - 1 do begin DBGrid1.DataSource.DataSet.GotoBookmark(Pointer(DBGrid1.SelectedRows.Items[i])); Memo1.Lines.Add(DataSource1.DataSet.Fields[1].AsString) end; а вот, как это поле найти в бд и выделить его в DBGrid....никак не пойму...помогите, пожалуйста новичку)))) |
|||
|
||||
| DimW |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 5 Всего: 44 |
в нринципи подход верный, но не в мемо сохраняй, а создай переменную типа TStringList и храни в ней идентификаторы записей, именно идентификаторы!!! найти эти поля можно селектом:
после выполнения этого селекта DBGrid покажет твои записи как динамически строить запрос в делфи думаю ты знаешь... Это сообщение отредактировал(а) DimW - 15.3.2007, 15:31 |
||||
|
|||||
| Ksen |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 97 Регистрация: 24.5.2006 Где: Санкт-Петербург Репутация: нет Всего: нет |
DimW, ммм...может я немного не понимаю.....но селектом я сделаю выборку этих записей из таблицы...а мне нужно, как бы объяснить....записи найти и выделить из общего списка DBGrid...даже наверное, лучше было бы в базе не искать, а искать в DBGrid...
|
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 5 Всего: 44 |
понятно...
бежишь в цикле по таблице и выделяешь нужные записи примерно так: table1.first; while not table1.eof do begin if table1.FieldByName('имя_поля_значение_которого_сохраняла').asstring = значению_которое_сохраняла then то выделяешь строку в DBGrid; table1.next; end; только вот перебор всех записей для проверки это не лучший способ, наверное есть более правельный. так как в делфе я давно не сидел то это все чем могу помочь, по моему можно как то через букмарки.. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |