Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DBGrid [D7]


OlgaL ©   (2011-10-10 07:55:00) 

Здравствуйте программисты!!!) Подскажите пжалуйсто: Мне нужно выбрать в DBGridе склады, их может быть три, два, пять. Незнаю как выделить сразу несколько строк в DBGridе, чтобы потом по этим данным вывести отчёт...


Ega23   (2011-10-11 12:00:00) [1]


> А ведь и впрямь что-то они странный пример сделали:


Не только это.


function TForm19.Foo(aGrid: TDBGrid): Integer;
var
 bm: TBookmark;
 i: Integer;
 aDS: TDataSet;
begin
 Result := 0;
 if (aGrid.DataSource = nil) or
    (aGrid.DataSource.DataSet = nil) then Exit;

 aDS := aGrid.DataSource.DataSet;

 if aDS.IsEmpty then Exit;

 aDS.DisableControls;
 try
   bm := aDS.GetBookmark;

   for i := 0 to aGrid.SelectedRows.Count - 1 do
   begin
     aDS.GotoBookmark(aGrid.SelectedRows[i]);
     /// Что-то делаем
     Inc(Result);
   end;

   aDS.GotoBookmark(bm);
   aDS.FreeBookmark(bm);

 finally
   aDS.EnableControls;
 end;

end;


И. Павел   (2011-10-11 11:51:00) [2]

> [6] И. Павел ©   (11.10.11 11:49)

И еще присвоили квакерам Кинговскую цитату из темной башни.


И. Павел   (2011-10-11 11:49:00) [3]

> Посмотреть, разобраться что к чему и переписать этот говнокод.

А ведь и впрямь что-то они странный пример сделали:
if (dbgIn.SelectedRows.CurrentRowSelected = True) then
А я привык доверять delphisources.ru.


Anatoly Podgoretsky   (2011-10-11 11:23:00) [4]

Использовать вместо DBGrid - TListView


Ega23   (2011-10-11 10:15:00) [5]


> А вот так можно организовать цикл по выделенным строкам:
>
> http://www.delphisources.ru/pages/faq/base/use_dbgrid_selected_rows.html


Посмотреть, разобраться что к чему и переписать этот говнокод.


OW   (2011-10-11 09:50:00) [6]

данные в гриде это прошлый век,
теперь там склады :)


KilkennyCat   (2011-10-11 02:23:00) [7]


> как выделить сразу несколько строк в DBGridе

используя ctrl или shift


И. Павел   (2011-10-10 08:04:00) [8]

Установите Options->dgMultiSelect и dgRowSelect;

А вот так можно организовать цикл по выделенным строкам:
http://www.delphisources.ru/pages/faq/base/use_dbgrid_selected_rows.html


Наверх

Титульная страница Поиск, карта сайта Написать письмо