Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС 2017
выпущен 15 марта!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

БОЛЬШОЙ FAQ ПО DELPHI



Использование опции MultiSelect в DBGRID

Если вы с первого раза сумели написать программу, в которой компилятор не нашел ни одной ошибки, сообщите об этом системному программисту, он исправит ошибки в компиляторе.

Есть пример в Delphi Technical Information... Его можно посмотреть здесь


 {*
 Данный пример позволяет производить множественный выбор записей
 в табличной сетке и отображать второе поле
 набора данных.
 
 Метод DisableControls применяется для того, чтобы
 DBGrid не обновлялся во время изменения набора данных.
 Последняя позиция набора данных сохраняется как
 TBookmark.
 
 Метод IndexOf вызывается для проверки
 существования закладки.
 Решение использовать метод IndexOf, а не метод
 Refresh должно определяться
 спецификой приложения.
 *}
 
 procedure TForm1.SelectClick(Sender: TObject);
 var
   x: word;
   TempBookmark: TBookMark;
 begin
   DBGrid1.Datasource.Dataset.DisableControls;
   with DBgrid1.SelectedRows do
     if Count <> 0 then
     begin
       TempBookmark := DBGrid1.Datasource.Dataset.GetBookmark;
       for x := 0 to Count - 1 do
       begin
         if IndexOf(Items[x]) > -1 then
         begin
           DBGrid1.Datasource.Dataset.Bookmark := Items[x];
           showmessage(DBGrid1.Datasource.Dataset.Fields[1].AsString);
         end;
       end;
     end;
   DBGrid1.Datasource.Dataset.GotoBookmark(TempBookmark);
   DBGrid1.Datasource.Dataset.FreeBookmark(TempBookmark);
   DBGrid1.Datasource.Dataset.EnableControls;
 end;
 




<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS