Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Базы данных и репортинг > Цвета строк в DBGrid |
Автор: Ptica 24.3.2005, 14:30 | ||
Проблема следующая: нужно отображать разные строки в таблице разным цветом в зависимости от условия. Прочел тучу примеров того, как это делается, сделал... работает! Похвастался коллеге. Он у себя давай то же самое делать... не работает! Во блин... Фрагменты кода практически идентичные, но у меня работает, а у него - нет. Бились мы с ним, бились... вот и у меня перестало работать. ![]() ![]() Вот код (Delphi 6)
Есть ли методы получше? |
Автор: bursa 24.3.2005, 14:47 | ||
Если просто, оставляя всё как есть - прибить колонки в DBGrid, а добавить их из FieldEditor самого TTable или TQuery. Эффект тот же (название, длина, маска,видимость), а глюков меньше. Ну а главное, твой код выше будет работать |
Автор: Ptica 24.3.2005, 15:22 | ||||
bursa Спасибо, попробую. Пока что я обнаружил, что если вместо
|
Автор: Cetus 24.3.2005, 16:28 |
смотри DRKB23 там все прекрасно расписано ![]() |
Автор: Bes 5.4.2005, 07:33 |
Кстати, а можно ячейки закрашивать, а не цвет шрифта менять? |
Автор: DimW 5.4.2005, 07:59 | ||||
DBGrid1DrawDataCell:
|
Автор: Bes 5.4.2005, 09:36 |
2DimW: У меня ничего не произошло...? А, нет, все заработало, только все равно не то. Надо сделать "шахматную доску" из DBGrid-а. |
Автор: DimW 5.4.2005, 12:00 |
Во класс, ну тебя прет... А поподробнее можно!!!! ![]() Может тему новую откроешь? |
Автор: Bes 5.4.2005, 13:19 |
![]() |
Автор: DimW 5.4.2005, 13:59 | ||
Все понял это ты образно сказал... а я и думаю почему DBGrig... |
Автор: Bes 5.4.2005, 15:25 | ||
Ага, ну дак че, есть идеи. додумался только до того, чтобы программно модифицировать Рект в таком коде,
но может есть что-то человеческое? |
Автор: DimW 6.4.2005, 08:28 | ||
Bes вот тебе шахматная доска из DBGrid:
Все оказалось довольно просто, ведь правда? ![]() |
Автор: Cetus 7.4.2005, 07:49 |
в догонку ... я бы к DataSet через DBGrid.DataSource.DataSet обращался procedure ... var DS : TDataSet; begin DS := DBGrid.DataSource.DataSet; if DS.RecNo = ... ... end; и тогда эту процедуру на несколько DBGrid можно будет завести |