![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Цветовое выделение групп записей в DBGrid [D6]
Nika © (2009-02-22 21:23:00)И снова полосатый DBGrid. Есть таблица в БД Access, читаем ADO выводим в Grid. Таблица отсортирована по полю х. В разных записях в поле х встречаются одинаковые значения. Для удобства анализа данных необходимо вделить группы с одинаковыми значениями х (полосатый Grid), число записей в группе от 1 до n. Реализовано:
sRec : string;
b : boolean;
procedure TForm1.MyGrid1DrawColumnCell ...
begin
if sRec <> Q1.FieldByName('NDoc').AsString then begin
sRec := Q1.FieldByName('NDoc').AsString;
b := not b;
end;
if b then
MyGrid1.Canvas.Brush.Color := clInfoBk
else
MyGrid1.Canvas.Brush.Color := $00FDF8DB;
end;
...
При первичном выводе Grida на экран все хорошо раскраска верная. Если последовательно перемещятся по записям тоже все хорошо. Если прыгать по записям мышкой, цветовые группы изменяются (запись на которую перемещен указатель меняет цвет).
Есть идеи как реализовать такую задачу, только средствами Grida, без предварительной обработки таблицы с дополнительным служебным полем ???
Спасибо.
Nika (2009-02-22 22:12:00) [21]Цветовое выделение групп записей должно быть стабильным и не должно изменяться при перемещении по записям.
Johnmen (2009-02-22 21:42:00) [22]Какую задачу?